updated packages and added markdown support on card content
This commit is contained in:
@@ -16,7 +16,7 @@ app.use(express.static(path.join(__dirname, "../public")));
|
|||||||
|
|
||||||
app.get('/api/news-list', async (request, response) => {
|
app.get('/api/news-list', async (request, response) => {
|
||||||
const database = new sqlite3.Database(path.join(__dirname, "../assets/databases/news.db"));
|
const database = new sqlite3.Database(path.join(__dirname, "../assets/databases/news.db"));
|
||||||
const sqlQuery = `SELECT * FROM news;`;
|
const sqlQuery = `SELECT * FROM news ORDER BY date DESC;`;
|
||||||
try {
|
try {
|
||||||
const result = await asyncDatabaseRead(database, sqlQuery, (rows) => {
|
const result = await asyncDatabaseRead(database, sqlQuery, (rows) => {
|
||||||
let ret = "";
|
let ret = "";
|
||||||
|
|||||||
12
src-manager/package-lock.json
generated
12
src-manager/package-lock.json
generated
@@ -1830,9 +1830,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/node-abi": {
|
"node_modules/node-abi": {
|
||||||
"version": "3.67.0",
|
"version": "3.68.0",
|
||||||
"resolved": "https://registry.npmjs.org/node-abi/-/node-abi-3.67.0.tgz",
|
"resolved": "https://registry.npmjs.org/node-abi/-/node-abi-3.68.0.tgz",
|
||||||
"integrity": "sha512-bLn/fU/ALVBE9wj+p4Y21ZJWYFjUXLXPi/IewyLZkx3ApxKDNBWCKdReeKOtD8dWpOdDCeMyLh6ZewzcLsG2Nw==",
|
"integrity": "sha512-7vbj10trelExNjFSBm5kTvZXXa7pZyKWx9RCKIyqe6I9Ev3IzGpQoqBP3a+cOdxY+pWj6VkP28n/2wWysBHD/A==",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"semver": "^7.3.5"
|
"semver": "^7.3.5"
|
||||||
@@ -1873,9 +1873,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/nodemon": {
|
"node_modules/nodemon": {
|
||||||
"version": "3.1.4",
|
"version": "3.1.7",
|
||||||
"resolved": "https://registry.npmjs.org/nodemon/-/nodemon-3.1.4.tgz",
|
"resolved": "https://registry.npmjs.org/nodemon/-/nodemon-3.1.7.tgz",
|
||||||
"integrity": "sha512-wjPBbFhtpJwmIeY2yP7QF+UKzPfltVGtfce1g/bB15/8vCGZj8uxD62b/b9M9/WVgme0NZudpownKN+c0plXlQ==",
|
"integrity": "sha512-hLj7fuMow6f0lbB0cD14Lz2xNjwsyruH251Pk4t/yIitCFJbmY1myuLlHm/q06aST4jg6EgAh74PIBBrRqpVAQ==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
|
|||||||
@@ -38,7 +38,7 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<label for="cardContent">Card Content:</label>
|
<label for="cardContent">Card Content:</label>
|
||||||
<input type="text" id="cardContent" name="cardContent" required>
|
<textarea type="text" id="cardContent" name="cardContent" required></textarea>
|
||||||
|
|
||||||
<label for="article">Content:</label>
|
<label for="article">Content:</label>
|
||||||
<textarea id="article" name="article" rows="24" cols="80"></textarea>
|
<textarea id="article" name="article" rows="24" cols="80"></textarea>
|
||||||
@@ -58,17 +58,26 @@
|
|||||||
</div>
|
</div>
|
||||||
<div>
|
<div>
|
||||||
<h3>Preview</h3>
|
<h3>Preview</h3>
|
||||||
<div id="preview"></div>
|
<h4>Card Content</h4>
|
||||||
|
<div id="preview-card-content"></div>
|
||||||
|
<h4>Article</h4>
|
||||||
|
<div id="preview-article"></div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
const markdownPreivew = document.getElementById('preview');
|
const markdownPreview = document.getElementById('preview-article');
|
||||||
|
const cardContentPreview = document.getElementById('preview-card-content');
|
||||||
const articleEditor = document.getElementById('article');
|
const articleEditor = document.getElementById('article');
|
||||||
|
const cardContentInput = document.getElementById('cardContent');
|
||||||
const submitButton = document.getElementById('submit-button');
|
const submitButton = document.getElementById('submit-button');
|
||||||
|
|
||||||
articleEditor.addEventListener('input', () => {
|
articleEditor.addEventListener('input', () => {
|
||||||
markdownPreivew.innerHTML = marked.parse(articleEditor.value);
|
markdownPreview.innerHTML = marked.parse(articleEditor.value);
|
||||||
|
});
|
||||||
|
|
||||||
|
cardContentInput.addEventListener('input', () => {
|
||||||
|
cardContentPreview.innerHTML = marked.parse(cardContentInput.value);
|
||||||
});
|
});
|
||||||
|
|
||||||
submitButton.addEventListener('click', () => {
|
submitButton.addEventListener('click', () => {
|
||||||
|
|||||||
@@ -39,7 +39,7 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<label for="cardContent">Card Content:</label>
|
<label for="cardContent">Card Content:</label>
|
||||||
<input type="text" id="cardContent" name="cardContent" required>
|
<textarea rows="3" cols="80" id="cardContent" name="cardContent" required></textarea>
|
||||||
|
|
||||||
<label for="article">Content:</label>
|
<label for="article">Content:</label>
|
||||||
<textarea id="article" name="article" rows="24" cols="80"></textarea>
|
<textarea id="article" name="article" rows="24" cols="80"></textarea>
|
||||||
@@ -60,13 +60,17 @@
|
|||||||
</form>
|
</form>
|
||||||
</div>
|
</div>
|
||||||
<div>
|
<div>
|
||||||
<h3>Preview</h3>
|
<h3>Previews</h3>
|
||||||
<div id="preview"></div>
|
<h4>Card Content</h4>
|
||||||
|
<div id="preview-card-content"></div>
|
||||||
|
<h4>Article</h4>
|
||||||
|
<div id="preview-article"></div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
const markdownPreivew = document.getElementById('preview');
|
const markdownPreview = document.getElementById('preview-article');
|
||||||
|
const cardContentPreview = document.getElementById('preview-card-content');
|
||||||
const articleEditor = document.getElementById('article');
|
const articleEditor = document.getElementById('article');
|
||||||
const submitButton = document.getElementById('submit-button');
|
const submitButton = document.getElementById('submit-button');
|
||||||
const cardContentInput = document.getElementById('cardContent');
|
const cardContentInput = document.getElementById('cardContent');
|
||||||
@@ -85,7 +89,7 @@
|
|||||||
coverImagePathInput.value = response.data.coverImagePath;
|
coverImagePathInput.value = response.data.coverImagePath;
|
||||||
linkPathInput.value = response.data.linkPath.split('/')[2];
|
linkPathInput.value = response.data.linkPath.split('/')[2];
|
||||||
articleEditor.value = response.data.article;
|
articleEditor.value = response.data.article;
|
||||||
markdownPreivew.innerHTML = marked.parse(articleEditor.value);
|
markdownPreview.innerHTML = marked.parse(articleEditor.value);
|
||||||
if (response.data.entryType == 0) {
|
if (response.data.entryType == 0) {
|
||||||
entryTypeArticleInput.checked = true;
|
entryTypeArticleInput.checked = true;
|
||||||
} else if (response.data.entryType == 1) {
|
} else if (response.data.entryType == 1) {
|
||||||
@@ -95,7 +99,11 @@
|
|||||||
.catch((err) => {console.error(err)});
|
.catch((err) => {console.error(err)});
|
||||||
|
|
||||||
articleEditor.addEventListener('input', () => {
|
articleEditor.addEventListener('input', () => {
|
||||||
markdownPreivew.innerHTML = marked.parse(articleEditor.value);
|
markdownPreview.innerHTML = marked.parse(articleEditor.value);
|
||||||
|
});
|
||||||
|
|
||||||
|
cardContentInput.addEventListener('input', () => {
|
||||||
|
cardContentPreview.innerHTML = marked.parse(cardContentInput.value);
|
||||||
});
|
});
|
||||||
|
|
||||||
submitButton.addEventListener('click', () => {
|
submitButton.addEventListener('click', () => {
|
||||||
|
|||||||
Reference in New Issue
Block a user