forked from firka/firka
feat: add error page
This commit is contained in:
BIN
firka/assets/images/cactus_error_screen.png
Normal file
BIN
firka/assets/images/cactus_error_screen.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 3.8 KiB |
BIN
firka/assets/images/logos/dave_error.png
Normal file
BIN
firka/assets/images/logos/dave_error.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 329 KiB |
369
firka/assets/swears/DirtyWords.xml
Normal file
369
firka/assets/swears/DirtyWords.xml
Normal file
@@ -0,0 +1,369 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- https://github.com/stifolder/kretainsult/blob/master/src/assets/dirtywords.xml -->
|
||||
<!-- Köszönjük a kretainsult.online eredeti alkotójának a kategorizálást! -->
|
||||
<DirtyWords>
|
||||
<Word type="m">Aberált</Word>
|
||||
<Word type="m">Aberrált</Word>
|
||||
<Word type="f">Abortuszmaradék</Word>
|
||||
<Word type="m">Abszolút hülye</Word>
|
||||
<Word type="m">Agyalágyult</Word>
|
||||
<Word type="m">Agyatlan</Word>
|
||||
<Word type="m">Agybatetovált</Word>
|
||||
<Word type="m">Ágybavizelős</Word>
|
||||
<Word type="f">Agyfasz</Word>
|
||||
<Word type="f">Agyhalott</Word>
|
||||
<Word type="m">Agyonkúrt</Word>
|
||||
<Word type="m">Agyonvert</Word>
|
||||
<Word type="m">Agyrákos</Word>
|
||||
<Word type="m">AIDS-es</Word>
|
||||
<Word type="m">Alapvetően fasz</Word>
|
||||
<Word type="f">Animalsex-mániás</Word>
|
||||
<Word type="f">Antibarom</Word>
|
||||
<Word type="m">Aprófaszú</Word>
|
||||
<Word type="m">Arcbarakott</Word>
|
||||
<Word type="m">Aszaltfaszú</Word>
|
||||
<Word type="m">Aszott</Word>
|
||||
<Word type="m">Átbaszott</Word>
|
||||
<Word type="f">Azt a kurva de fasz</Word>
|
||||
<Word type="m">Balatonberényben napvilágot látott</Word>
|
||||
<Word type="f">Balfasz</Word>
|
||||
<Word type="f">Balfészek</Word>
|
||||
<Word type="f">Baromfifasz</Word>
|
||||
<Word type="f">Basz-o-matic</Word>
|
||||
<Word type="m">Baszhatatlan</Word>
|
||||
<Word type="m">Basznivaló</Word>
|
||||
<Word type="m">Bebaszott</Word>
|
||||
<Word type="m">Befosi</Word>
|
||||
<Word type="m">Békapicsa</Word>
|
||||
<Word type="m">Bélböfi</Word>
|
||||
<Word type="m">Beleiből kiforgatott</Word>
|
||||
<Word type="f">Bélszél</Word>
|
||||
<Word type="m">Bronz térdű</Word>
|
||||
<Word type="f">Brunya</Word>
|
||||
<Word type="m">Büdös szájú</Word>
|
||||
<Word type="m">Büdösszájú</Word>
|
||||
<Word type="m">Búvalbaszott</Word>
|
||||
<Word type="f">Buzeráns</Word>
|
||||
<Word type="m">Buzernyák</Word>
|
||||
<Word type="f">Buzi</Word>
|
||||
<Word type="f">Buzikurva</Word>
|
||||
<Word type="f">Cafat</Word>
|
||||
<Word type="f">Cafka</Word>
|
||||
<Word type="f">Céda</Word>
|
||||
<Word type="m">Cérnafaszú</Word>
|
||||
<Word type="f">Cottonfej</Word>
|
||||
<Word type="m">Csempe szobában felneveltetett</Word>
|
||||
<Word type="m">Cseszett</Word>
|
||||
<Word type="f">Csibefasz</Word>
|
||||
<Word type="f">Csipszar</Word>
|
||||
<Word type="m">Csirkefaszú</Word>
|
||||
<Word type="f">Csitri</Word>
|
||||
<Word type="f">Csöcs</Word>
|
||||
<Word type="f">Csöcsfej</Word>
|
||||
<Word type="f">Csöppszar</Word>
|
||||
<Word type="m">Csőszkunyhóban elrejtett</Word>
|
||||
<Word type="m">Csupaszfarkú</Word>
|
||||
<Word type="f">Cuncipunci</Word>
|
||||
<Word type="m">Deformáltfaszú</Word>
|
||||
<Word type="m">Dekorált pofájú</Word>
|
||||
<Word type="m">Döbbenetesen segg</Word>
|
||||
<Word type="m">Dobseggű</Word>
|
||||
<Word type="m">Dughatatlan</Word>
|
||||
<Word type="m">Dunyhavalagú</Word>
|
||||
<Word type="m">Duplafaszú</Word>
|
||||
<Word type="f">Ebfasz</Word>
|
||||
<Word type="m">Egyszerűen fasz</Word>
|
||||
<Word type="m">Elbaszott</Word>
|
||||
<Word type="m">Eleve hülye</Word>
|
||||
<Word type="m">Extrahülye</Word>
|
||||
<Word type="m">Fafogú rézfűrésszel megsebzett</Word>
|
||||
<Word type="m">Fantasztikusan segg</Word>
|
||||
<Word type="f">Fasszopó</Word>
|
||||
<Word type="m">Fasz</Word>
|
||||
<Word type="m">Fasz-emulátor</Word>
|
||||
<Word type="m">Faszagyú</Word>
|
||||
<Word type="f">Faszarc</Word>
|
||||
<Word type="f">Faszfej</Word>
|
||||
<Word type="f">Faszfészek</Word>
|
||||
<Word type="f">Faszkalap</Word>
|
||||
<Word type="f">Faszkarika</Word>
|
||||
<Word type="m">Faszkedvelő</Word>
|
||||
<Word type="f">Faszkópé</Word>
|
||||
<Word type="f">Faszogány</Word>
|
||||
<Word type="f">Faszpörgettyű</Word>
|
||||
<Word type="f">Faszsapka</Word>
|
||||
<Word type="m">Faszszagú</Word>
|
||||
<Word type="f">Faszszopó</Word>
|
||||
<Word type="m">Fasztalan</Word>
|
||||
<Word type="f">Fasztarisznya</Word>
|
||||
<Word type="f">Fasztengely</Word>
|
||||
<Word type="f">Fasztolvaj</Word>
|
||||
<Word type="f">Faszváladék</Word>
|
||||
<Word type="f">Faszverő</Word>
|
||||
<Word type="m">Félrebaszott</Word>
|
||||
<Word type="m">Félrefingott</Word>
|
||||
<Word type="m">Félreszart</Word>
|
||||
<Word type="f">Félribanc</Word>
|
||||
<Word type="f">Fing</Word>
|
||||
<Word type="m">Fölcsinált</Word>
|
||||
<Word type="m">Fölfingott</Word>
|
||||
<Word type="f">Fos</Word>
|
||||
<Word type="f">Foskemence</Word>
|
||||
<Word type="f">Fospisztoly</Word>
|
||||
<Word type="f">Fospumpa</Word>
|
||||
<Word type="f">Fostalicska</Word>
|
||||
<Word type="f">Fütyi</Word>
|
||||
<Word type="m">Fütyinyalogató</Word>
|
||||
<Word type="f">Fütykös</Word>
|
||||
<Word type="f">Geci</Word>
|
||||
<Word type="m">Gecinyelő</Word>
|
||||
<Word type="m">Geciszaró</Word>
|
||||
<Word type="m">Geciszívó</Word>
|
||||
<Word type="f">Genny</Word>
|
||||
<Word type="m">Gennyesszájú</Word>
|
||||
<Word type="f">Gennygóc</Word>
|
||||
<Word type="f">Genyac</Word>
|
||||
<Word type="f">Genyó</Word>
|
||||
<Word type="f">Gólyafos</Word>
|
||||
<Word type="m">Görbefaszú</Word>
|
||||
<Word type="m">Gyennyszopó</Word>
|
||||
<Word type="f">Gyíkfing</Word>
|
||||
<Word type="f">Hájpacni</Word>
|
||||
<Word type="f">Hatalmas nagy fasz</Word>
|
||||
<Word type="m">Hátbabaszott</Word>
|
||||
<Word type="f">Házikurva</Word>
|
||||
<Word type="m">Hererákos</Word>
|
||||
<Word type="m">Hígagyú</Word>
|
||||
<Word type="m">Hihetetlenül fasz</Word>
|
||||
<Word type="f">Hikomat</Word>
|
||||
<Word type="f">Hímnőstény</Word>
|
||||
<Word type="f">Hímringyó</Word>
|
||||
<Word type="m">Hiperstrici</Word>
|
||||
<Word type="m">Hitler-imádó</Word>
|
||||
<Word type="m">Hitlerista</Word>
|
||||
<Word type="f">Hivatásos balfasz</Word>
|
||||
<Word type="m">Hú de segg</Word>
|
||||
<Word type="m">Hugyagyú</Word>
|
||||
<Word type="m">Hugyos</Word>
|
||||
<Word type="f">Hugytócsa</Word>
|
||||
<Word type="m">Hüje</Word>
|
||||
<Word type="m">Hüle</Word>
|
||||
<Word type="m">Hülye</Word>
|
||||
<Word type="m">Hülyécske</Word>
|
||||
<Word type="f">Hülyegyerek</Word>
|
||||
<Word type="f">Inkubátor-szökevény</Word>
|
||||
<Word type="f">Integrált barom</Word>
|
||||
<Word type="m">Ionizált faszú</Word>
|
||||
<Word type="f">IQ bajnok</Word>
|
||||
<Word type="f">IQ fighter</Word>
|
||||
<Word type="m">IQ hiányos</Word>
|
||||
<Word type="m">Irdatlanul köcsög</Word>
|
||||
<Word type="m">Íveltfaszú</Word>
|
||||
<Word type="m">Jajj de barom</Word>
|
||||
<Word type="m">Jókora fasz</Word>
|
||||
<Word type="f">Kaka</Word>
|
||||
<Word type="f">Kakamatyi</Word>
|
||||
<Word type="f">Kaki</Word>
|
||||
<Word type="f">Kaksi</Word>
|
||||
<Word type="m">Kecskebaszó</Word>
|
||||
<Word type="m">Kellően fasz</Word>
|
||||
<Word type="m">Képlékeny faszú</Word>
|
||||
<Word type="f">Keresve sem található fasz</Word>
|
||||
<Word type="m">Kétfaszú</Word>
|
||||
<Word type="m">Kétszer agyonbaszott</Word>
|
||||
<Word type="m">Ki-bebaszott</Word>
|
||||
<Word type="m">Kibaszott</Word>
|
||||
<Word type="m">Kifingott</Word>
|
||||
<Word type="m">Kiherélt</Word>
|
||||
<Word type="m">Kikakkantott</Word>
|
||||
<Word type="m">Kikészült</Word>
|
||||
<Word type="m">Kimagaslóan fasz</Word>
|
||||
<Word type="m">Kimondhatatlan pöcs</Word>
|
||||
<Word type="f">Kis szaros</Word>
|
||||
<Word type="f">Kisfütyi</Word>
|
||||
<Word type="m">Klotyószagú</Word>
|
||||
<Word type="m">Ködmönbe bújtatott</Word>
|
||||
<Word type="m">Kojak-faszú</Word>
|
||||
<Word type="m">Kopárfaszú</Word>
|
||||
<Word type="m">Korlátolt gecizésű</Word>
|
||||
<Word type="f">Kotonszökevény</Word>
|
||||
<Word type="m">Középszar</Word>
|
||||
<Word type="f">Kretén</Word>
|
||||
<Word type="f">Kuki</Word>
|
||||
<Word type="f">Kula</Word>
|
||||
<Word type="m">Kunkorított faszú</Word>
|
||||
<Word type="f">Kurva</Word>
|
||||
<Word type="m">Kurvaanyjú</Word>
|
||||
<Word type="f">Kurvapecér</Word>
|
||||
<Word type="f">Kutyakaki</Word>
|
||||
<Word type="f">Kutyapina</Word>
|
||||
<Word type="f">Kutyaszar</Word>
|
||||
<Word type="m">Lankadtfaszú</Word>
|
||||
<Word type="m">Lebaszirgált</Word>
|
||||
<Word type="m">Lebaszott</Word>
|
||||
<Word type="m">Lecseszett</Word>
|
||||
<Word type="m">Leírhatatlanul segg</Word>
|
||||
<Word type="m">Lemenstruált</Word>
|
||||
<Word type="m">Leokádott</Word>
|
||||
<Word type="f">Lepkefing</Word>
|
||||
<Word type="f">Leprafészek</Word>
|
||||
<Word type="m">Leszart</Word>
|
||||
<Word type="m">Leszbikus</Word>
|
||||
<Word type="f">Lőcs</Word>
|
||||
<Word type="f">Lőcsgéza</Word>
|
||||
<Word type="f">Lófasz</Word>
|
||||
<Word type="m">Lógócsöcsű</Word>
|
||||
<Word type="f">Lóhugy</Word>
|
||||
<Word type="f">Lotyó</Word>
|
||||
<Word type="m">Lucskos</Word>
|
||||
<Word type="f">Lugnya</Word>
|
||||
<Word type="m">Lyukasbelű</Word>
|
||||
<Word type="m">Lyukasfaszú</Word>
|
||||
<Word type="m">Lyukát vakaró</Word>
|
||||
<Word type="m">Lyuktalanított</Word>
|
||||
<Word type="f">Mamutsegg</Word>
|
||||
<Word type="f">Maszturbációs görcs</Word>
|
||||
<Word type="f">Maszturbagép</Word>
|
||||
<Word type="m">Maszturbáltatott</Word>
|
||||
<Word type="m">Megfingatott</Word>
|
||||
<Word type="m">Megkettyintett</Word>
|
||||
<Word type="m">Megkúrt</Word>
|
||||
<Word type="m">Megszopatott</Word>
|
||||
<Word type="m">Mesterséges faszú</Word>
|
||||
<Word type="f">Méteres kékeres</Word>
|
||||
<Word type="m">Mikrotökű</Word>
|
||||
<Word type="m">Mocskos</Word>
|
||||
<Word type="f">Mojfing</Word>
|
||||
<Word type="m">Műfaszú</Word>
|
||||
<Word type="f">Muff</Word>
|
||||
<Word type="f">Multifasz</Word>
|
||||
<Word type="m">Műtöttpofájú</Word>
|
||||
<Word type="m">Náci</Word>
|
||||
<Word type="m">Nagyfejű</Word>
|
||||
<Word type="f">Nikotinpatkány</Word>
|
||||
<Word type="m">Nimfomániás</Word>
|
||||
<Word type="f">Nuna</Word>
|
||||
<Word type="f">Nunci</Word>
|
||||
<Word type="f">Nuncóka</Word>
|
||||
<Word type="f">Nyalábfasz</Word>
|
||||
<Word type="f">Nyelestojás</Word>
|
||||
<Word type="f">Nyúlszar</Word>
|
||||
<Word type="f">Oltári nagy fasz</Word>
|
||||
<Word type="m">Ondónyelő</Word>
|
||||
<Word type="m">Orbitálisan hülye</Word>
|
||||
<Word type="m">Ordenálé</Word>
|
||||
<Word type="m">Összebaszott</Word>
|
||||
<Word type="f">Ötcsillagos fasz</Word>
|
||||
<Word type="m">Óvszerezett</Word>
|
||||
<Word type="f">Pénisz</Word>
|
||||
<Word type="m">Peremesfaszú</Word>
|
||||
<Word type="f">Picsa</Word>
|
||||
<Word type="f">Picsafej</Word>
|
||||
<Word type="m">Picsameresztő</Word>
|
||||
<Word type="m">Picsánnyalt</Word>
|
||||
<Word type="m">Picsánrugott</Word>
|
||||
<Word type="m">Picsányi</Word>
|
||||
<Word type="m">Pikkelypáncélt hordó</Word>
|
||||
<Word type="f">Pina</Word>
|
||||
<Word type="f">Pisa</Word>
|
||||
<Word type="m">Pisaszagú</Word>
|
||||
<Word type="m">Pisis</Word>
|
||||
<Word type="f">Pöcs</Word>
|
||||
<Word type="f">Pöcsfej</Word>
|
||||
<Word type="m">Porbafingó</Word>
|
||||
<Word type="f">Pornóbuzi</Word>
|
||||
<Word type="m">Pornómániás</Word>
|
||||
<Word type="m">Pudvás</Word>
|
||||
<Word type="m">Pudváslikú</Word>
|
||||
<Word type="m">Puhafaszú</Word>
|
||||
<Word type="f">Punci</Word>
|
||||
<Word type="f">Puncimókus</Word>
|
||||
<Word type="m">Puncis</Word>
|
||||
<Word type="f">Punciutáló</Word>
|
||||
<Word type="f">Puncivirág</Word>
|
||||
<Word type="f">Qki</Word>
|
||||
<Word type="f">Qrva</Word>
|
||||
<Word type="f">Qtyaszar</Word>
|
||||
<Word type="m">Rabló</Word>
|
||||
<Word type="m">Rágcsáltfaszú</Word>
|
||||
<Word type="f">Redva</Word>
|
||||
<Word type="m">Rendkívül fasz</Word>
|
||||
<Word type="m">Repedtsarkú</Word>
|
||||
<Word type="m">Rétó-román</Word>
|
||||
<Word type="m">Rézhasú</Word>
|
||||
<Word type="f">Ribanc</Word>
|
||||
<Word type="f">Riherongy</Word>
|
||||
<Word type="m">Ritka fogú</Word>
|
||||
<Word type="m">Rivalizáló</Word>
|
||||
<Word type="f">Rőfös fasz</Word>
|
||||
<Word type="m">Rojtospicsájú</Word>
|
||||
<Word type="m">Rongyospinájú</Word>
|
||||
<Word type="m">Roppant hülye</Word>
|
||||
<Word type="f">Rossz kurva</Word>
|
||||
<Word type="m">Saját nemével kefélő</Word>
|
||||
<Word type="f">Segg</Word>
|
||||
<Word type="f">Seggarc</Word>
|
||||
<Word type="f">Seggdugó</Word>
|
||||
<Word type="f">Seggfej</Word>
|
||||
<Word type="f">Seggnyaló</Word>
|
||||
<Word type="f">Seggszőr</Word>
|
||||
<Word type="f">Seggtorlasz</Word>
|
||||
<Word type="m">Sikoltozásokba öltöztetett</Word>
|
||||
<Word type="f">Strici</Word>
|
||||
<Word type="m">Suttyó</Word>
|
||||
<Word type="m">Sutyerák</Word>
|
||||
<Word type="m">Szálkafaszú</Word>
|
||||
<Word type="f">Szar</Word>
|
||||
<Word type="f">Szaralak</Word>
|
||||
<Word type="f">Szárazfing</Word>
|
||||
<Word type="f">Szarbojler</Word>
|
||||
<Word type="f">Szarcsimbók</Word>
|
||||
<Word type="m">Szarevő</Word>
|
||||
<Word type="m">Szarfaszú</Word>
|
||||
<Word type="f">Szarházi</Word>
|
||||
<Word type="f">Szarjankó</Word>
|
||||
<Word type="m">Szarnivaló</Word>
|
||||
<Word type="m">Szarosvalagú</Word>
|
||||
<Word type="m">Szarrá vágott</Word>
|
||||
<Word type="f">Szarrágó</Word>
|
||||
<Word type="m">Szarszagú</Word>
|
||||
<Word type="m">Szarszájú</Word>
|
||||
<Word type="f">Szartragacs</Word>
|
||||
<Word type="f">Szarzsák</Word>
|
||||
<Word type="f">Szégyencsicska</Word>
|
||||
<Word type="m">Szifiliszes</Word>
|
||||
<Word type="f">Szivattyús kurva</Word>
|
||||
<Word type="m">Szófosó</Word>
|
||||
<Word type="m">Szokatlanul fasz</Word>
|
||||
<Word type="f">Szop-o-matic</Word>
|
||||
<Word type="f">Szopógép</Word>
|
||||
<Word type="f">Szopógörcs</Word>
|
||||
<Word type="f">Szopós kurva</Word>
|
||||
<Word type="m">Szopottfarkú</Word>
|
||||
<Word type="m">Szűklyukú</Word>
|
||||
<Word type="m">Szultán udvarát megjárt</Word>
|
||||
<Word type="f">Szúnyogfaszni</Word>
|
||||
<Word type="f">Szuperbuzi</Word>
|
||||
<Word type="f">Szuperkurva</Word>
|
||||
<Word type="m">Szűzhártya-repedéses</Word>
|
||||
<Word type="f">Szűzkurva</Word>
|
||||
<Word type="f">Szűzpicsa</Word>
|
||||
<Word type="f">Szűzpunci</Word>
|
||||
<Word type="m">Tetves</Word>
|
||||
<Word type="f">Tikfos</Word>
|
||||
<Word type="f">Tikszar</Word>
|
||||
<Word type="m">Tompatökű</Word>
|
||||
<Word type="m">Törpefaszú</Word>
|
||||
<Word type="m">Toszatlan</Word>
|
||||
<Word type="m">Toszott</Word>
|
||||
<Word type="m">Totálisan hülye</Word>
|
||||
<Word type="m">Tyű de picsa</Word>
|
||||
<Word type="m">Tyúkfasznyi</Word>
|
||||
<Word type="f">Tyúkszar</Word>
|
||||
<Word type="f">Vadfasz</Word>
|
||||
<Word type="f">Valag</Word>
|
||||
<Word type="f">Valagváladék</Word>
|
||||
<Word type="f">Végbélféreg</Word>
|
||||
<Word type="f">Xar</Word>
|
||||
<Word type="m">Zsugorított faszú</Word>
|
||||
</DirtyWords>
|
||||
50
firka/lib/helpers/swear_generator.dart
Normal file
50
firka/lib/helpers/swear_generator.dart
Normal file
@@ -0,0 +1,50 @@
|
||||
import 'dart:math';
|
||||
import 'package:flutter/services.dart' show rootBundle;
|
||||
import 'package:xml/xml.dart';
|
||||
|
||||
List<String> _nouns = [];
|
||||
List<String> _adjectives = [];
|
||||
|
||||
Future<void> loadDirtyWords() async {
|
||||
final xmlString = await rootBundle.loadString('assets/swears/DirtyWords.xml');
|
||||
final document = XmlDocument.parse(xmlString);
|
||||
|
||||
for (final node in document.findAllElements('Word')) {
|
||||
final type = node.getAttribute('type');
|
||||
final text = node.text.trim();
|
||||
|
||||
if (type == 'f') {
|
||||
_nouns.add(text);
|
||||
} else if (type == 'm') {
|
||||
_adjectives.add(text);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
String generateSwearSentence(
|
||||
{int words = 3, bool capitalize = true, bool exclamation = true}) {
|
||||
if (words < 1) {
|
||||
throw ArgumentError('Words must be at least 1');
|
||||
}
|
||||
|
||||
final random = Random();
|
||||
|
||||
// if we only need one word, return a noun, that's the one that fits the most
|
||||
if (words == 1) {
|
||||
final word = _nouns[random.nextInt(_nouns.length)].toLowerCase();
|
||||
return (capitalize ? word[0].toUpperCase() + word.substring(1) : word) +
|
||||
(exclamation ? '!' : '');
|
||||
}
|
||||
|
||||
final chosenNouns = List.generate(
|
||||
words - 1,
|
||||
(_) => _nouns[random.nextInt(_nouns.length)],
|
||||
);
|
||||
|
||||
final adjective = _adjectives[random.nextInt(_adjectives.length)];
|
||||
|
||||
final swear = '${chosenNouns.join(', ')} $adjective'.toLowerCase();
|
||||
|
||||
return (capitalize ? swear[0].toUpperCase() + swear.substring(1) : swear) +
|
||||
(exclamation ? '!' : '');
|
||||
}
|
||||
@@ -12,6 +12,7 @@ import 'package:firka/helpers/db/widget.dart';
|
||||
import 'package:firka/helpers/extensions.dart';
|
||||
import 'package:firka/helpers/firka_bundle.dart';
|
||||
import 'package:firka/helpers/settings.dart';
|
||||
import 'package:firka/helpers/swear_generator.dart';
|
||||
import 'package:firka/l10n/app_localizations_hu.dart';
|
||||
import 'package:firka/ui/model/style.dart';
|
||||
import 'package:firka/ui/phone/pages/error/error_page.dart';
|
||||
@@ -351,6 +352,10 @@ void main() async {
|
||||
})();
|
||||
}
|
||||
|
||||
logger.finest('loading dirty words');
|
||||
await loadDirtyWords();
|
||||
logger.finest('loaded dirty words');
|
||||
|
||||
// Run App Initialization
|
||||
runApp(InitializationScreen());
|
||||
}, (error, stackTrace) {
|
||||
|
||||
@@ -1,4 +1,8 @@
|
||||
import 'package:firka/ui/model/style.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:firka/helpers/image_preloader.dart';
|
||||
import 'package:firka/helpers/firka_bundle.dart';
|
||||
import 'package:firka/helpers/swear_generator.dart';
|
||||
|
||||
class ErrorPage extends StatelessWidget {
|
||||
final String exception;
|
||||
@@ -7,6 +11,126 @@ class ErrorPage extends StatelessWidget {
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return Scaffold(
|
||||
backgroundColor: appStyle.colors.background,
|
||||
body: Padding(
|
||||
padding: const EdgeInsets.symmetric(vertical: 64, horizontal: 24),
|
||||
child: Column(
|
||||
mainAxisAlignment: MainAxisAlignment.spaceBetween,
|
||||
children: [
|
||||
Column(children: [
|
||||
SizedBox(height: 48),
|
||||
Container(
|
||||
width: 50,
|
||||
height: 50,
|
||||
clipBehavior: Clip.antiAlias,
|
||||
decoration: ShapeDecoration(
|
||||
image: DecorationImage(
|
||||
image: PreloadedImageProvider(FirkaBundle(),
|
||||
('assets/images/logos/dave_error.png')),
|
||||
fit: BoxFit.cover,
|
||||
),
|
||||
shape: ContinuousRectangleBorder(),
|
||||
),
|
||||
),
|
||||
Padding(
|
||||
padding: const EdgeInsets.symmetric(
|
||||
vertical: 24, horizontal: 32),
|
||||
child: Column(children: [
|
||||
Text(
|
||||
'e-Kréta, te',
|
||||
style: appStyle.fonts.H_16px
|
||||
.copyWith(color: appStyle.colors.textSecondary),
|
||||
textAlign: TextAlign.center,
|
||||
),
|
||||
Text(
|
||||
//'a,',
|
||||
generateSwearSentence(),
|
||||
style: appStyle.fonts.H_H2.copyWith(
|
||||
color: appStyle.colors.textPrimary,
|
||||
fontSize: 24),
|
||||
textAlign: TextAlign.center,
|
||||
),
|
||||
])),
|
||||
Padding(
|
||||
padding: const EdgeInsets.symmetric(horizontal: 32),
|
||||
child: Text(
|
||||
"Valami probléma történt, ez természetesen az EduDev Zrt. hibája minden esetben",
|
||||
style: appStyle.fonts.B_14R.copyWith(
|
||||
color: appStyle.colors.textSecondary,
|
||||
),
|
||||
textAlign: TextAlign.center,
|
||||
),
|
||||
),
|
||||
]),
|
||||
Column(
|
||||
children: [
|
||||
Stack(children: [
|
||||
Container(
|
||||
height: 300,
|
||||
padding: const EdgeInsets.all(12),
|
||||
decoration: BoxDecoration(
|
||||
shape: BoxShape.rectangle,
|
||||
color: appStyle.colors.card,
|
||||
borderRadius: BorderRadius.circular(12)),
|
||||
child: Text(exception,
|
||||
style: appStyle.fonts.B_14R.copyWith(
|
||||
color: appStyle.colors.textPrimary,
|
||||
fontFamily: 'RobotoMono'))),
|
||||
Positioned(
|
||||
bottom: 0,
|
||||
right: 16,
|
||||
child: Container(
|
||||
width: 60,
|
||||
height: 76,
|
||||
clipBehavior: Clip.antiAlias,
|
||||
decoration: ShapeDecoration(
|
||||
image: DecorationImage(
|
||||
image: PreloadedImageProvider(FirkaBundle(),
|
||||
('assets/images/cactus_error_screen.png')),
|
||||
fit: BoxFit.cover,
|
||||
colorFilter: ColorFilter.srgbToLinearGamma()),
|
||||
shape: ContinuousRectangleBorder(),
|
||||
),
|
||||
),
|
||||
)
|
||||
]),
|
||||
SizedBox(
|
||||
height: 20,
|
||||
),
|
||||
ElevatedButton(
|
||||
// TODO: report bug
|
||||
onPressed: () => Navigator.pop(context),
|
||||
style: ElevatedButton.styleFrom(
|
||||
foregroundColor: appStyle.colors.textPrimary,
|
||||
backgroundColor: appStyle.colors.accent,
|
||||
shape: RoundedRectangleBorder(
|
||||
borderRadius: BorderRadius.circular(12)),
|
||||
elevation: 1,
|
||||
shadowColor: appStyle.colors.shadowColor,
|
||||
minimumSize: Size.fromHeight(48)),
|
||||
child: Text("Hiba jelentése",
|
||||
style: appStyle.fonts.H_18px
|
||||
.copyWith(fontWeight: FontWeight.w700))),
|
||||
SizedBox(
|
||||
height: 8,
|
||||
),
|
||||
ElevatedButton(
|
||||
onPressed: () => Navigator.pop(context),
|
||||
style: ElevatedButton.styleFrom(
|
||||
foregroundColor: appStyle.colors.textSecondary,
|
||||
backgroundColor:
|
||||
appStyle.colors.buttonSecondaryFill,
|
||||
shape: RoundedRectangleBorder(
|
||||
borderRadius: BorderRadius.circular(12)),
|
||||
elevation: 1,
|
||||
shadowColor: appStyle.colors.shadowColor,
|
||||
minimumSize: Size.fromHeight(48)),
|
||||
child: Text("Vissza", style: appStyle.fonts.B_16R))
|
||||
],
|
||||
)
|
||||
])));
|
||||
|
||||
return Scaffold(
|
||||
appBar: AppBar(
|
||||
title: Text('Error Occurred'),
|
||||
|
||||
@@ -69,6 +69,7 @@ dependencies:
|
||||
logging: ^1.3.0
|
||||
share_plus: ^11.1.0
|
||||
url_launcher: ^6.3.2
|
||||
xml: ^6.6.1
|
||||
|
||||
dev_dependencies:
|
||||
flutter_test:
|
||||
@@ -103,6 +104,9 @@ flutter:
|
||||
- assets/icons/
|
||||
- assets/majesticons/
|
||||
- assets/firka.i
|
||||
- assets/swears/DirtyWords.xml
|
||||
- assets/images/cactus_error_screen.png
|
||||
- assets/images/logos/dave_error.png
|
||||
|
||||
fonts:
|
||||
- family: Montserrat
|
||||
|
||||
Reference in New Issue
Block a user