|
54 | 54 | // Firefox seems to have an odd bug which affects clicking backspace in quick succession. |
55 | 55 | // Kudos to @gvp9000 and for the fix below. (gwyneth 20240414) |
56 | 56 | // @see https://www.phpbb.com/customise/db/extension/postlocalstorage/support/topic/246616?p=877489#p877489 |
57 | | - |
58 | | - |
59 | | -// POSTING |
60 | | -//possible key formats |
61 | | -//./phpBB3/posting.php?mode=edit&&p=xxxxx#preview#preview#preview#preview ....... |
62 | | -//./phpBB3/posting.php?mode=quote&p=xxxxx#preview#preview#preview#preview ....... |
63 | | -//./phpBB3/posting.php?mode=reply&t=yyyyy#preview#preview#preview#preview ....... |
64 | | -//Remove all "#preview" strings at the end |
| 57 | + |
| 58 | + // POSTING |
| 59 | + //possible key formats |
| 60 | + //./phpBB3/posting.php?mode=edit&&p=xxxxx#preview#preview#preview#preview ....... |
| 61 | + //./phpBB3/posting.php?mode=quote&p=xxxxx#preview#preview#preview#preview ....... |
| 62 | + //./phpBB3/posting.php?mode=reply&t=yyyyy#preview#preview#preview#preview ....... |
| 63 | + //Remove all "#preview" strings at the end |
65 | 64 | if (key.includes("posting.php?mode=")) { |
66 | 65 | if (key.endsWith("#preview")) { |
67 | 66 | var count_hash = key.split("#").length - 1; |
|
70 | 69 | } |
71 | 70 | } |
72 | 71 | } |
73 | | - |
74 | | -// PM'ing |
75 | | -//possible key formats |
76 | | - |
77 | | -//1 case |
78 | | -//./phpBB3/ucp.php?i=pm&mode=compose |
79 | | -//nothing to do here |
80 | | - |
81 | | -//2 case |
82 | | -//./phpBB3/ucp.php?i=ucp_pm&mode=compose returns |
83 | | -//./phpBB3/ucp.php?i=pm&mode=compose |
| 72 | + // PM'ing |
| 73 | + //possible key formats |
| 74 | + |
| 75 | + //1 case |
| 76 | + //./phpBB3/ucp.php?i=pm&mode=compose |
| 77 | + //nothing to do here |
| 78 | + |
| 79 | + //2 case |
| 80 | + //./phpBB3/ucp.php?i=ucp_pm&mode=compose returns |
| 81 | + //./phpBB3/ucp.php?i=pm&mode=compose |
84 | 82 | if (key.includes("ucp.php?i=ucp_pm&mode=compose")) { |
85 | 83 | key = key.split("?")[0].concat("?i=pm&mode=compose"); |
86 | 84 | } |
87 | 85 |
|
88 | | -//3 case |
89 | | -//./phpBB3/ucp.php?i=pm&mode=compose&action=post&sid=sssssssssssssssssssssssssss returns |
90 | | -//./phpBB3/ucp.php?i=pm&mode=compose |
| 86 | + //3 case |
| 87 | + //./phpBB3/ucp.php?i=pm&mode=compose&action=post&sid=sssssssssssssssssssssssssss returns |
| 88 | + //./phpBB3/ucp.php?i=pm&mode=compose |
91 | 89 | if (key.includes("ucp.php?i=pm&mode=compose&action=post")) { |
92 | 90 | key = key.split("?")[0].concat("?i=pm&mode=compose"); |
93 | 91 | } |
94 | 92 |
|
95 | | -//4 case ./phpBB3/ucp.php?i=pm&mode=compose&action=reply&f=xxx&p=yyy |
96 | | -//5 case ./phpBB3/ucp.php?i=pm&mode=compose&action=forward&f=xxx&p=yyy |
97 | | -//6 case ./phpBB3/ucp.php?i=pm&mode=compose&action=quote&f=xxx&p=yyy |
| 93 | + //4 case ./phpBB3/ucp.php?i=pm&mode=compose&action=reply&f=xxx&p=yyy |
| 94 | + //5 case ./phpBB3/ucp.php?i=pm&mode=compose&action=forward&f=xxx&p=yyy |
| 95 | + //6 case ./phpBB3/ucp.php?i=pm&mode=compose&action=quote&f=xxx&p=yyy |
98 | 96 | if (key.includes("ucp.php?i=pm&mode=compose&action=reply&f=") || key.includes("ucp.php?i=pm&mode=compose&action=forward&f=") || key.includes("ucp.php?i=pm&mode=compose&action=quote&f=")) { |
99 | 97 | var fpos = key.indexOf("&f="), |
100 | 98 | ppos = key.indexOf("&p="); |
|
103 | 101 | } |
104 | 102 | } |
105 | 103 |
|
106 | | -//7 case |
107 | | -//./phpBB3/ucp.php?i=pm&mode=compose&action=reply&sid=sssssssssssssssssssssssssss&p=yyy returns |
108 | | -//./phpBB3/ucp.php?i=pm&mode=compose&action=reply&p=yyy |
109 | | -//8th case |
110 | | -//./phpBB3/ucp.php?i=pm&mode=compose&action=forward&sid=sssssssssssssssssssssssssss&p=yyy returns |
111 | | -//./phpBB3/ucp.php?i=pm&mode=compose&action=forward&p=yyy |
112 | | -//9th case |
113 | | -//./phpBB3/ucp.php?i=pm&mode=compose&action=quote&sid=sssssssssssssssssssssssssss&p=yyy returns |
114 | | -//./phpBB3/ucp.php?i=pm&mode=compose&action=quote&p=yyy |
| 104 | + //7 case |
| 105 | + //./phpBB3/ucp.php?i=pm&mode=compose&action=reply&sid=sssssssssssssssssssssssssss&p=yyy returns |
| 106 | + //./phpBB3/ucp.php?i=pm&mode=compose&action=reply&p=yyy |
| 107 | + //8th case |
| 108 | + //./phpBB3/ucp.php?i=pm&mode=compose&action=forward&sid=sssssssssssssssssssssssssss&p=yyy returns |
| 109 | + //./phpBB3/ucp.php?i=pm&mode=compose&action=forward&p=yyy |
| 110 | + //9th case |
| 111 | + //./phpBB3/ucp.php?i=pm&mode=compose&action=quote&sid=sssssssssssssssssssssssssss&p=yyy returns |
| 112 | + //./phpBB3/ucp.php?i=pm&mode=compose&action=quote&p=yyy |
115 | 113 | if (key.includes("ucp.php?i=pm&mode=compose&action=reply&sid=") || key.includes("ucp.php?i=pm&mode=compose&action=forward&sid=") || key.includes("ucp.php?i=pm&mode=compose&action=quote&sid=")) { |
116 | 114 | var sipos = key.indexOf("&sid="), |
117 | 115 | pipos = key.indexOf("&p="); |
|
243 | 241 | const expiry_time = parseInt(document.getElementById('expiry-time').innerText.trim(), 10); |
244 | 242 | const dateNow = Math.floor(Date.now() / 1000); // we get milliseconds, so we need to convert to seconds. |
245 | 243 | console.debug("Date.now() in seconds is " + dateNow + " and expiry_time is " + expiry_time); |
246 | | - if (dateNow > expiry_time) { |
| 244 | + |
| 245 | + //the if statement for deleting local storage in PM'ing, because expiry_time = 0, it must be fixed |
| 246 | + if (!key.includes("ucp.php")) { |
| 247 | + if (dateNow > expiry_time) { |
247 | 248 | // We won't clear anything if the session already expired, so return. |
248 | 249 | return; |
| 250 | + } |
249 | 251 | } |
250 | 252 |
|
251 | 253 | // Now remove the local storage on `Submit` — it'll get saved to the database as a post/PM, |
|
0 commit comments