diff --git a/src/js/slaveInteract.js b/src/js/slaveInteract.js index 8989f10b62a3796263728b1fce3d5ff2433825f7..13d2d4399ed54fb0fc4cce297c4906e5d6f5a34d 100644 --- a/src/js/slaveInteract.js +++ b/src/js/slaveInteract.js @@ -92,14 +92,48 @@ App.UI.SlaveInteract.fucktoyPref = function(slave) { return jQuery('#fucktoypref').empty().append(el); }; -App.UI.SlaveInteract.assignmentBlock = function(blockId) { - let res = App.UI.jobLinks.assignments(-1, undefined, () => { - return `<<replace "#assign">>$activeSlave.assignment<</replace>><<replace "#${blockId}">><<= App.UI.SlaveInteract.assignmentBlock("${blockId}")>><<= App.UI.SlaveInteract.fucktoyPref($activeSlave)>><</replace>>`; - }); - if (State.variables.activeSlave.assignment !== "choose her own job") { - res += ' |  <<link "Stay on this assignment for another month">><<set $activeSlave.sentence += 4>><<replace "#assign">>$activeSlave.assignment($activeSlave.sentence weeks)<</replace>><</link>>'; +App.UI.SlaveInteract.assignmentBlock = function(blockId, slave) { + let el = document.createElement('div'); + let title = document.createElement('div'); + let separator = document.createTextNode(` | `); + title.append(`Assignment: `); + + let assign = document.createElement('span'); + assign.style.fontWeight = "bold"; + if (slave.sentence) { + assign.textContent = `${slave.assignment} (${slave.sentence} weeks). `; + } else { + assign.textContent = `${slave.assignment}. `; + } + title.appendChild(assign); + if (V.assignmentRecords[slave.ID] && V.assignmentRecords[slave.ID] !== slave.assignment) { + title.append(`Previously: `); + assign = document.createElement('span'); + assign.style.fontWeight = "bold"; + assign.textContent = `${V.assignmentRecords[slave.ID]}`; + title.appendChild(assign); + } + el.appendChild(title); + + let links = document.createElement('div'); + links.className = "choices"; + let res = App.UI.jobLinks.assignmentsFragment(V.slaveIndices[slave.ID], passage(), (slave, assignment) => { assignJob(slave, assignment); }); + links.appendChild(res); + + if (slave.assignment !== "choose her own job") { + links.append(separator); + links.appendChild( + App.UI.DOM.link( + `Stay on this assignment for another month`, + () => { + slave.sentence += 4, + App.UI.SlaveInteract.assignmentBlock(blockId, slave); + }, + ) + ); } - return res; + el.appendChild(links); + return jQuery(`#${blockId}`).empty().append(el); }; App.UI.SlaveInteract.drugs = function(slave) { diff --git a/src/uncategorized/slaveInteract.tw b/src/uncategorized/slaveInteract.tw index 5ee25d6a021d1132bb869602cdb59ea4f9601498..7db74c82bf2712844bf465c1e967238e2c3f2fb5 100644 --- a/src/uncategorized/slaveInteract.tw +++ b/src/uncategorized/slaveInteract.tw @@ -157,25 +157,14 @@ <div id="fucktoypref"></div> <script>App.UI.SlaveInteract.fucktoyPref(V.activeSlave)</script> - - Assignment: - <span id="assign" font-weight="bold"> - <<if $activeSlave.sentence>> - $activeSlave.assignment ($activeSlave.sentence weeks). - <<else>> - $activeSlave.assignment. - <</if>> - </span> - <<if $assignmentRecords[$activeSlave.ID] && $assignmentRecords[$activeSlave.ID] != $activeSlave.assignment>> - Previously: <<print $assignmentRecords[$activeSlave.ID]>> - <</if>> - <span id="assignmentLinks"><<= App.UI.SlaveInteract.assignmentBlock("assignmentLinks")>></span> + <span id="assignmentLinks"></span> + <script>App.UI.SlaveInteract.assignmentBlock("assignmentLinks", V.activeSlave)</script> <<set _numFacilities = $brothel+$club+$dairy+$farmyard+$servantsQuarters+$masterSuite+$spa+$nursery+$clinic+$schoolroom+$cellblock+$arcade+$HGSuite>> <<if _numFacilities > 0>> - <br>Transfer to: <<= App.UI.jobLinks.transfers(-1)>> + Transfer to: <<= App.UI.jobLinks.transfers(-1)>> <</if>> /* closes _numFacilities */ <</switch>> /* END CAN BE REASSIGNED */