New Level type inserted
This commit is contained in:
parent
ef098d2ea3
commit
6b9b6d1032
1
.idea/wordRotator.iml
generated
1
.idea/wordRotator.iml
generated
@ -3,7 +3,6 @@
|
|||||||
<component name="NewModuleRootManager">
|
<component name="NewModuleRootManager">
|
||||||
<content url="file://$MODULE_DIR$">
|
<content url="file://$MODULE_DIR$">
|
||||||
<sourceFolder url="file://$MODULE_DIR$/src/module/Application/src" isTestSource="false" packagePrefix="Application\" />
|
<sourceFolder url="file://$MODULE_DIR$/src/module/Application/src" isTestSource="false" packagePrefix="Application\" />
|
||||||
<sourceFolder url="file://$MODULE_DIR$/src/module/Application/pwa/public" isTestSource="false" />
|
|
||||||
<excludeFolder url="file://$MODULE_DIR$/public/js" />
|
<excludeFolder url="file://$MODULE_DIR$/public/js" />
|
||||||
<excludeFolder url="file://$MODULE_DIR$/publicTest" />
|
<excludeFolder url="file://$MODULE_DIR$/publicTest" />
|
||||||
<excludeFolder url="file://$MODULE_DIR$/vendor/doctrine/event-manager" />
|
<excludeFolder url="file://$MODULE_DIR$/vendor/doctrine/event-manager" />
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
cd $(dirname "$0")/..
|
cd $(dirname "$0")/..
|
||||||
npm run build
|
npm run build 1
|
||||||
@ -2,5 +2,5 @@
|
|||||||
|
|
||||||
cd $(dirname "$0")/..
|
cd $(dirname "$0")/..
|
||||||
|
|
||||||
testcafe firefox test/test.testcafe.js
|
testcafe firefox test/test.testcafe.js --debug-on-fail
|
||||||
#node bin/testcafe.js;
|
#node bin/testcafe.js;
|
||||||
@ -18,6 +18,7 @@ return [
|
|||||||
'driver_options' => array(
|
'driver_options' => array(
|
||||||
PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES \'UTF8\''
|
PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES \'UTF8\''
|
||||||
),
|
),
|
||||||
|
'charset' => "UTF8",
|
||||||
),
|
),
|
||||||
|
|
||||||
'appVariables' => [
|
'appVariables' => [
|
||||||
|
|||||||
@ -32,6 +32,7 @@ return [
|
|||||||
PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES utf8'
|
PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES utf8'
|
||||||
),
|
),
|
||||||
'useStrict' => true,
|
'useStrict' => true,
|
||||||
|
'charset' => 'utf8'
|
||||||
],
|
],
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
|
|||||||
@ -78,10 +78,14 @@ INSERT INTO `Level` (`id`, `words`, `positions`, `renderer`, `lastUpdated`, `lan
|
|||||||
(15, '["ARCHIV","CHARME"]', '[1,1,3]', 20, '2018-07-14 17:01:18', 1, 0, 2),
|
(15, '["ARCHIV","CHARME"]', '[1,1,3]', 20, '2018-07-14 17:01:18', 1, 0, 2),
|
||||||
(26, '["BRAUEREI","THERAPIE"]', '[3,2,0,1]', 40, '2018-07-14 17:01:18', 1, 0, 40),
|
(26, '["BRAUEREI","THERAPIE"]', '[3,2,0,1]', 40, '2018-07-14 17:01:18', 1, 0, 40),
|
||||||
(217, '["ZEITSTRAFE","HOCHSAISON"]', '[1,0,3,3,1]', 60, '2018-07-14 17:01:18', 1, 0, 60),
|
(217, '["ZEITSTRAFE","HOCHSAISON"]', '[1,0,3,3,1]', 60, '2018-07-14 17:01:18', 1, 0, 60),
|
||||||
(220, '["FEINGUSS","R\\u00dcCKFALL","PHYSIKER","RESIDENZ","BERATUNG","KOCHTOPF"]', '[2,0,0,1,2,2,3,3,2,1,1,2,0,0]', 100, '2018-07-14 17:01:18', 1, 0, 100),
|
(220, '["FEINGUSS","RÜCKFALL","PHYSIKER","RESIDENZ","BERATUNG","KOCHTOPF"]', '[2,0,0,1,2,2,3,3,2,1,1,2,0,0]', 100, '2018-07-14 17:01:18', 1, 0, 100),
|
||||||
(24, '["BETONUNG","ANBETUNG","ALLERGIE","BAUMHAUS"]', '[0,3,1,1,3,1,2,0,0,0]', 120, '2018-07-14 17:01:18', 1, 0, 120),
|
(24, '["BETONUNG","ANBETUNG","ALLERGIE","BAUMHAUS"]', '[0,3,1,1,3,1,2,0,0,0]', 120, '2018-07-14 17:01:18', 1, 0, 120),
|
||||||
(62, '["FEHLPROGNOSE","GEISTESKRAFT","ARBEITSPAUSE","BEREITSCHAFT","MOSAIKARBEIT","INFRAROTFILM"]', '[0,3,0,1,0,3,2,3,1,2,3,1,2,2,0,2,3,0,2,1,1]', 140, '2018-07-14 17:01:18', 1, 0, 140),
|
(62, '["FEHLPROGNOSE","GEISTESKRAFT","ARBEITSPAUSE","BEREITSCHAFT","MOSAIKARBEIT","INFRAROTFILM"]', '[0,3,0,1,0,3,2,3,1,2,3,1,2,2,0,2,3,0,2,1,1]', 140, '2018-07-14 17:01:18', 1, 0, 140),
|
||||||
(260, '["SCHREIBTISCH","URHEBERRECHT","PFLANZENKOST","OPERNKONZERT"]', '[1,3,2,1,3,0,1,2,3,0,2,0,1,0,0]', 160, '2018-07-14 17:01:18', 1, 0, 160),
|
(260, '["SCHREIBTISCH","URHEBERRECHT","PFLANZENKOST","OPERNKONZERT"]', '[1,3,2,1,3,0,1,2,3,0,2,0,1,0,0]', 160, '2018-07-14 17:01:18', 1, 0, 160),
|
||||||
(67,'["AHNUNG","AUSBAU"]','[0,0,1]',20,'2018-10-10 00:00:00',1,0,1),
|
(67,'["AHNUNG","AUSBAU"]','[0,0,1]',20,'2018-10-10 00:00:00',1,0,1),
|
||||||
(341,'["NACHLASS","BUSLINIE","REITBAHN","LAUFGANG","KASCHMIR","BADETUCH"]','[1,3,0,2,3,0,1,0,0,0,3,1,0,0]',100,'2018-04-15 12:22:11',1,0,61)
|
(341,'["NACHLASS","BUSLINIE","REITBAHN","LAUFGANG","KASCHMIR","BADETUCH"]','[1,3,0,2,3,0,1,0,0,0,3,1,0,0]',100,'2018-04-15 12:22:11',1,0,90),
|
||||||
|
(1921,'["HACKBRATEN","FLÜCHTLING","HOFTHEATER","KIELWASSER"]','[3,1,3,0,0,1,3,0,1,0,1]',81,'2018-11-06 17:08:37',1,0,70),
|
||||||
|
(2270,'["AUFKLÄRUNG","FALTENROCK","HERZFEHLER","RESTAURANT"]','[0,0,0,2,0,1,0,3,2,1,3]',80,'2018-11-06 17:08:50',1,0,80),
|
||||||
|
(2266,'["SPRÜHREGEN","SITZKISSEN","FÜHRERHAUS","NAVIGATION"]','[3,1,1,2,1,3,3,3,2,1,3]',82,'2018-11-06 17:08:50',1,0,81),
|
||||||
|
(2265,'["ZINSESZINS","TISCHLAMPE","ABSPALTUNG","BRANDWUNDE"]','[2,3,3,2,2,3,0,1,0,1,2]',83,'2018-11-06 17:08:50',1,0,82)
|
||||||
;
|
;
|
||||||
@ -1,2 +1,7 @@
|
|||||||
|
UPDATE Level SET words = REPLACE(words, "\\u00fc", "Ü");
|
||||||
|
UPDATE Level SET words = REPLACE(words, "\\u00dc", "Ü");
|
||||||
|
UPDATE Level SET words = REPLACE(words, "\\u00f6", "Ö");
|
||||||
|
UPDATE Level SET words = REPLACE(words, "\\u00df", "ß");
|
||||||
|
UPDATE Level SET words = REPLACE(words, "\\u00e4", "Ä");
|
||||||
UPDATE Word SET Word.used = 0;
|
UPDATE Word SET Word.used = 0;
|
||||||
UPDATE Word SET Word.used = 1 WHERE deleted = 0 AND (SELECT count(*) FROM Level WHERE words LIKE CONCAT("%\"", Word.word, "\"%") AND deleted = 0) > 0
|
UPDATE Word SET Word.used = 1 WHERE deleted = 0 AND (SELECT count(*) FROM Level WHERE words LIKE CONCAT("%\"", Word.word, "\"%") AND deleted = 0) > 0
|
||||||
File diff suppressed because one or more lines are too long
@ -202,7 +202,8 @@
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
}).then(function () {
|
}).then(function () {
|
||||||
if ('serviceWorker' in navigator) {
|
//No ServiceWorker for android!
|
||||||
|
if ('serviceWorker' in navigator && !window["android"]) {
|
||||||
console.log('sw in nav');
|
console.log('sw in nav');
|
||||||
navigator.serviceWorker.register("service-worker.js").then(function (reg) {
|
navigator.serviceWorker.register("service-worker.js").then(function (reg) {
|
||||||
if (reg.active) {
|
if (reg.active) {
|
||||||
|
|||||||
7893
public/js/app.js
7893
public/js/app.js
File diff suppressed because one or more lines are too long
@ -438,12 +438,14 @@ export class LevelSite extends WordRotatorBaseSite {
|
|||||||
|
|
||||||
let rotatableSegments = this.level.getRotatableSegments();
|
let rotatableSegments = this.level.getRotatableSegments();
|
||||||
let firstSegment = rotatableSegments[2];
|
let firstSegment = rotatableSegments[2];
|
||||||
|
console.log(firstSegment);
|
||||||
|
|
||||||
let pointer = this.findBy("#tutorial-pointer");
|
let pointer = this.findBy("#tutorial-pointer");
|
||||||
pointer.remove();
|
pointer.remove();
|
||||||
firstSegment.element.appendChild(pointer);
|
firstSegment.element.appendChild(pointer);
|
||||||
|
|
||||||
this.level.setSegmentClickedListener((segment) => {
|
this.level.setSegmentClickedListener((segment) => {
|
||||||
|
console.log("clicked Segment", segment);
|
||||||
if (firstSegment === segment) {
|
if (firstSegment === segment) {
|
||||||
this._siteContent.classList.remove("tutorial");
|
this._siteContent.classList.remove("tutorial");
|
||||||
this._siteContent.classList.remove("step-4");
|
this._siteContent.classList.remove("step-4");
|
||||||
@ -470,5 +472,5 @@ LevelSite.RENDERER_TYPES = [20, 40, 60, 80, 81, 82, 83, 100, 120, 140, 160];
|
|||||||
LevelSite.TUTORIAL = {
|
LevelSite.TUTORIAL = {
|
||||||
FIRST_LEVEL: 67,
|
FIRST_LEVEL: 67,
|
||||||
SECOND_LEVEL: 15,
|
SECOND_LEVEL: 15,
|
||||||
BIG_SEGMENT_LEVEL: 1386
|
BIG_SEGMENT_LEVEL: 1921
|
||||||
};
|
};
|
||||||
@ -254,7 +254,7 @@ class LevelManager extends StandardManager
|
|||||||
array_splice($levelsToGenerate, $currentIndex, 1);
|
array_splice($levelsToGenerate, $currentIndex, 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
} while (count($levelsToGenerate) > 0);
|
} while (count($levelsToGenerate) > 0 && $levelGenerated < 500);
|
||||||
|
|
||||||
$this->emFlush();
|
$this->emFlush();
|
||||||
$this->wordManager->emFlush();
|
$this->wordManager->emFlush();
|
||||||
|
|||||||
@ -1,9 +1,9 @@
|
|||||||
@keyframes tutorialPointer {
|
@keyframes tutorialPointer {
|
||||||
0% {
|
0% {
|
||||||
top: 75%;
|
top: 25%;
|
||||||
}
|
}
|
||||||
100% {
|
100% {
|
||||||
top: 25%;
|
top: 75%;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -96,11 +96,11 @@
|
|||||||
|
|
||||||
border-radius: 50%;
|
border-radius: 50%;
|
||||||
|
|
||||||
left: 25%;
|
left: 75%;
|
||||||
right: 50%;
|
//right: 50%;
|
||||||
position: absolute;
|
position: absolute;
|
||||||
top: 75%;
|
top: 75%;
|
||||||
bottom: 50%;
|
//bottom: 50%;
|
||||||
z-index: 1;
|
z-index: 1;
|
||||||
transform: translate(-50%, -50%);
|
transform: translate(-50%, -50%);
|
||||||
|
|
||||||
|
|||||||
@ -247,6 +247,7 @@ $coinTowerDimension: 28px;
|
|||||||
}
|
}
|
||||||
|
|
||||||
.segment {
|
.segment {
|
||||||
|
|
||||||
vertical-align: top;
|
vertical-align: top;
|
||||||
white-space: initial;
|
white-space: initial;
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
@ -267,6 +268,7 @@ $coinTowerDimension: 28px;
|
|||||||
}
|
}
|
||||||
|
|
||||||
&.segment-column {
|
&.segment-column {
|
||||||
|
padding-top: 4px;
|
||||||
> .child-container > .segment {
|
> .child-container > .segment {
|
||||||
display: block;
|
display: block;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
@ -376,6 +378,7 @@ body {
|
|||||||
#site-content {
|
#site-content {
|
||||||
overflow: visible;
|
overflow: visible;
|
||||||
}
|
}
|
||||||
|
|
||||||
div.mainContainer {
|
div.mainContainer {
|
||||||
overflow-x: hidden;
|
overflow-x: hidden;
|
||||||
|
|
||||||
|
|||||||
@ -1,7 +1,7 @@
|
|||||||
import {Selector} from 'testcafe';
|
import {Selector} from 'testcafe';
|
||||||
import {ClientFunction} from 'testcafe';
|
import {ClientFunction} from 'testcafe';
|
||||||
|
|
||||||
let isLocal = false;
|
let isLocal = true;
|
||||||
let isMobile = false;
|
let isMobile = false;
|
||||||
|
|
||||||
const checkMatrix = async (matrixStringSelector, shouldValues, timeout) => {
|
const checkMatrix = async (matrixStringSelector, shouldValues, timeout) => {
|
||||||
@ -208,6 +208,98 @@ test('Play', async t => {
|
|||||||
|
|
||||||
levelNumber++;
|
levelNumber++;
|
||||||
|
|
||||||
|
await t
|
||||||
|
.drag(Selector('.segment-parent').nth(SEGMENT.THREE), dragDimen, 4, {
|
||||||
|
offsetX: 10,
|
||||||
|
offsetY: 17
|
||||||
|
})
|
||||||
|
.click(Selector('.segment-parent').nth(SEGMENT.TWO))
|
||||||
|
.click(Selector('.segment-parent').nth(SEGMENT.SIX))
|
||||||
|
.click(Selector('.segment-parent').nth(SEGMENT.ELEVEN))
|
||||||
|
.click(Selector('.segment-parent').nth(SEGMENT.ONE))
|
||||||
|
.click(Selector('.segment-parent').nth(SEGMENT.NINE))
|
||||||
|
.click(Selector('.segment-parent').nth(SEGMENT.TWO))
|
||||||
|
.click(Selector('.segment-parent').nth(SEGMENT.SIX))
|
||||||
|
.click(Selector('.segment-parent').nth(SEGMENT.SEVEN))
|
||||||
|
.click(Selector('.segment-parent').nth(SEGMENT.NINE))
|
||||||
|
.click(Selector('.segment-parent').nth(SEGMENT.TWO))
|
||||||
|
.click(Selector('.segment-parent').nth(SEGMENT.ELEVEN))
|
||||||
|
.click(Selector('.segment-parent').nth(SEGMENT.NINE))
|
||||||
|
.click(Selector('.segment-parent').nth(SEGMENT.SIX))
|
||||||
|
.click(Selector('.segment-parent').nth(SEGMENT.ELEVEN))
|
||||||
|
.click(Selector('#continue-button'))
|
||||||
|
.expect(Selector('.coin-counter').innerText).contains("" + (coinsPerLevel * levelNumber + extraCoins - helpCost));
|
||||||
|
|
||||||
|
levelNumber++;
|
||||||
|
|
||||||
|
await t
|
||||||
|
.click(Selector('.segment-parent').nth(SEGMENT.FOUR))
|
||||||
|
.click(Selector('.segment-parent').nth(SEGMENT.SIX))
|
||||||
|
.click(Selector('.segment-parent').nth(SEGMENT.EIGHT))
|
||||||
|
.click(Selector('.segment-parent').nth(SEGMENT.TEN))
|
||||||
|
.click(Selector('.segment-parent').nth(SEGMENT.NINE))
|
||||||
|
.click(Selector('.segment-parent').nth(SEGMENT.TEN))
|
||||||
|
.click(Selector('.segment-parent').nth(SEGMENT.SIX))
|
||||||
|
.click(Selector('.segment-parent').nth(SEGMENT.FOUR))
|
||||||
|
.click(Selector('.segment-parent').nth(SEGMENT.NINE))
|
||||||
|
.click(Selector('.segment-parent').nth(SEGMENT.TEN))
|
||||||
|
.click(Selector('.segment-parent').nth(SEGMENT.ELEVEN))
|
||||||
|
.click(Selector('.segment-parent').nth(SEGMENT.SIX))
|
||||||
|
.click(Selector('#continue-button'))
|
||||||
|
.expect(Selector('.coin-counter').innerText).contains("" + (coinsPerLevel * levelNumber + extraCoins - helpCost));
|
||||||
|
|
||||||
|
levelNumber++;
|
||||||
|
|
||||||
|
await t
|
||||||
|
.drag(Selector('.segment-parent').nth(SEGMENT.FIVE), -dragDimen, 4, {
|
||||||
|
offsetX: dragDimen + 50,
|
||||||
|
offsetY: 17
|
||||||
|
})
|
||||||
|
.click(Selector('.segment-parent').nth(SEGMENT.TWO))
|
||||||
|
.click(Selector('.segment-parent').nth(SEGMENT.THREE))
|
||||||
|
.click(Selector('.segment-parent').nth(SEGMENT.TWO))
|
||||||
|
.click(Selector('.segment-parent').nth(SEGMENT.ONE))
|
||||||
|
.click(Selector('.segment-parent').nth(SEGMENT.THREE))
|
||||||
|
.click(Selector('.segment-parent').nth(SEGMENT.FOUR))
|
||||||
|
.click(Selector('.segment-parent').nth(SEGMENT.TEN))
|
||||||
|
.click(Selector('.segment-parent').nth(SEGMENT.SEVEN))
|
||||||
|
.click(Selector('.segment-parent').nth(SEGMENT.EIGHT))
|
||||||
|
.click(Selector('.segment-parent').nth(SEGMENT.NINE))
|
||||||
|
.click(Selector('.segment-parent').nth(SEGMENT.SIX))
|
||||||
|
.click(Selector('.segment-parent').nth(SEGMENT.TEN))
|
||||||
|
.click(Selector('.segment-parent').nth(SEGMENT.THREE))
|
||||||
|
.click(Selector('.segment-parent').nth(SEGMENT.TWO))
|
||||||
|
.click(Selector('.segment-parent').nth(SEGMENT.FOUR))
|
||||||
|
.click(Selector('.segment-parent').nth(SEGMENT.TEN))
|
||||||
|
.click(Selector('.segment-parent').nth(SEGMENT.ELEVEN))
|
||||||
|
.click(Selector('.segment-parent').nth(SEGMENT.NINE))
|
||||||
|
.click(Selector('#continue-button'))
|
||||||
|
.expect(Selector('.coin-counter').innerText).contains("" + (coinsPerLevel * levelNumber + extraCoins - helpCost));
|
||||||
|
levelNumber++;
|
||||||
|
|
||||||
|
await t
|
||||||
|
.click(Selector('.segment-parent').nth(SEGMENT.TEN))
|
||||||
|
.click(Selector('.segment-parent').nth(SEGMENT.EIGHT))
|
||||||
|
.click(Selector('.segment-parent').nth(SEGMENT.FOUR))
|
||||||
|
.click(Selector('.segment-parent').nth(SEGMENT.FIVE))
|
||||||
|
.click(Selector('.segment-parent').nth(SEGMENT.ELEVEN))
|
||||||
|
.click(Selector('.segment-parent').nth(SEGMENT.ONE))
|
||||||
|
.click(Selector('.segment-parent').nth(SEGMENT.TWO))
|
||||||
|
.click(Selector('.segment-parent').nth(SEGMENT.THREE))
|
||||||
|
.click(Selector('.segment-parent').nth(SEGMENT.TEN))
|
||||||
|
.click(Selector('.segment-parent').nth(SEGMENT.FOUR))
|
||||||
|
.click(Selector('.segment-parent').nth(SEGMENT.SIX))
|
||||||
|
.click(Selector('.segment-parent').nth(SEGMENT.ONE))
|
||||||
|
.click(Selector('.segment-parent').nth(SEGMENT.EIGHT))
|
||||||
|
.click(Selector('.segment-parent').nth(SEGMENT.FIVE))
|
||||||
|
.click(Selector('.segment-parent').nth(SEGMENT.TEN))
|
||||||
|
.click(Selector('.segment-parent').nth(SEGMENT.ELEVEN))
|
||||||
|
.click(Selector('.segment-parent').nth(SEGMENT.EIGHT))
|
||||||
|
.click(Selector('#continue-button'))
|
||||||
|
.expect(Selector('.coin-counter').innerText).contains("" + (coinsPerLevel * levelNumber + extraCoins - helpCost));
|
||||||
|
|
||||||
|
levelNumber++;
|
||||||
|
|
||||||
await t.drag(Selector('.segment-parent').nth(SEGMENT.ONE), -dragDimen, 4, {
|
await t.drag(Selector('.segment-parent').nth(SEGMENT.ONE), -dragDimen, 4, {
|
||||||
offsetX: dragDimen + 50,
|
offsetX: dragDimen + 50,
|
||||||
offsetY: 17
|
offsetY: 17
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user