mirror of
https://github.com/naturalcrit/homebrewery.git
synced 2026-01-02 19:22:47 +00:00
Push pageCount to NewPage and EditPage
This commit is contained in:
@@ -191,16 +191,19 @@ const EditPage = createClass({
|
|||||||
this.setState((prevState)=>({
|
this.setState((prevState)=>({
|
||||||
isSaving : true,
|
isSaving : true,
|
||||||
errors : null,
|
errors : null,
|
||||||
htmlErrors : Markdown.validate(prevState.brew.text)
|
htmlErrors : Markdown.validate(prevState.brew.text),
|
||||||
}));
|
}));
|
||||||
|
|
||||||
const transfer = this.state.saveGoogle == _.isNil(this.state.brew.googleId);
|
const transfer = this.state.saveGoogle == _.isNil(this.state.brew.googleId);
|
||||||
|
|
||||||
|
const brew = this.state.brew;
|
||||||
|
brew.pageCount = ((brew.renderer=='legacy' ? brew.text.match(/\\page/g) : brew.text.match(/^\\page/gm)) || []).length + 1;
|
||||||
|
|
||||||
if(this.state.saveGoogle) {
|
if(this.state.saveGoogle) {
|
||||||
if(transfer) {
|
if(transfer) {
|
||||||
const res = await request
|
const res = await request
|
||||||
.post('/api/newGoogle/')
|
.post('/api/newGoogle/')
|
||||||
.send(this.state.brew)
|
.send(brew)
|
||||||
.catch((err)=>{
|
.catch((err)=>{
|
||||||
console.log(err.status === 401
|
console.log(err.status === 401
|
||||||
? 'Not signed in!'
|
? 'Not signed in!'
|
||||||
@@ -211,7 +214,7 @@ const EditPage = createClass({
|
|||||||
if(!res) { return; }
|
if(!res) { return; }
|
||||||
|
|
||||||
console.log('Deleting Local Copy');
|
console.log('Deleting Local Copy');
|
||||||
await request.delete(`/api/${this.state.brew.editId}`)
|
await request.delete(`/api/${brew.editId}`)
|
||||||
.send()
|
.send()
|
||||||
.catch((err)=>{
|
.catch((err)=>{
|
||||||
console.log('Error deleting Local Copy');
|
console.log('Error deleting Local Copy');
|
||||||
@@ -221,8 +224,8 @@ const EditPage = createClass({
|
|||||||
history.replaceState(null, null, `/edit/${this.savedBrew.googleId}${this.savedBrew.editId}`); //update URL to match doc ID
|
history.replaceState(null, null, `/edit/${this.savedBrew.googleId}${this.savedBrew.editId}`); //update URL to match doc ID
|
||||||
} else {
|
} else {
|
||||||
const res = await request
|
const res = await request
|
||||||
.put(`/api/updateGoogle/${this.state.brew.editId}`)
|
.put(`/api/updateGoogle/${brew.editId}`)
|
||||||
.send(this.state.brew)
|
.send(brew)
|
||||||
.catch((err)=>{
|
.catch((err)=>{
|
||||||
console.log(err.status === 401
|
console.log(err.status === 401
|
||||||
? 'Not signed in!'
|
? 'Not signed in!'
|
||||||
@@ -236,14 +239,14 @@ const EditPage = createClass({
|
|||||||
} else {
|
} else {
|
||||||
if(transfer) {
|
if(transfer) {
|
||||||
const res = await request.post('/api')
|
const res = await request.post('/api')
|
||||||
.send(this.state.brew)
|
.send(brew)
|
||||||
.catch((err)=>{
|
.catch((err)=>{
|
||||||
console.log('Error creating Local Copy');
|
console.log('Error creating Local Copy');
|
||||||
this.setState({ errors: err });
|
this.setState({ errors: err });
|
||||||
return;
|
return;
|
||||||
});
|
});
|
||||||
|
|
||||||
await request.get(`/api/removeGoogle/${this.state.brew.googleId}${this.state.brew.editId}`)
|
await request.get(`/api/removeGoogle/${brew.googleId}${brew.editId}`)
|
||||||
.send()
|
.send()
|
||||||
.catch((err)=>{
|
.catch((err)=>{
|
||||||
console.log('Error Deleting Google Brew');
|
console.log('Error Deleting Google Brew');
|
||||||
@@ -253,8 +256,8 @@ const EditPage = createClass({
|
|||||||
history.replaceState(null, null, `/edit/${this.savedBrew.editId}`); //update URL to match doc ID
|
history.replaceState(null, null, `/edit/${this.savedBrew.editId}`); //update URL to match doc ID
|
||||||
} else {
|
} else {
|
||||||
const res = await request
|
const res = await request
|
||||||
.put(`/api/update/${this.state.brew.editId}`)
|
.put(`/api/update/${brew.editId}`)
|
||||||
.send(this.state.brew)
|
.send(brew)
|
||||||
.catch((err)=>{
|
.catch((err)=>{
|
||||||
console.log('Error Updating Local Brew');
|
console.log('Error Updating Local Brew');
|
||||||
this.setState({ errors: err });
|
this.setState({ errors: err });
|
||||||
|
|||||||
@@ -161,6 +161,8 @@ const NewPage = createClass({
|
|||||||
brew.text = brew.text.slice(index + 5);
|
brew.text = brew.text.slice(index + 5);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
brew.pageCount=((brew.renderer=='legacy' ? brew.text.match(/\\page/g) : brew.text.match(/^\\page/gm)) || []).length + 1;
|
||||||
|
|
||||||
if(this.state.saveGoogle) {
|
if(this.state.saveGoogle) {
|
||||||
const res = await request
|
const res = await request
|
||||||
.post('/api/newGoogle/')
|
.post('/api/newGoogle/')
|
||||||
|
|||||||
@@ -162,7 +162,7 @@ GoogleActions = {
|
|||||||
renderer : brew.renderer,
|
renderer : brew.renderer,
|
||||||
tags : brew.tags,
|
tags : brew.tags,
|
||||||
systems : brew.systems.join(),
|
systems : brew.systems.join(),
|
||||||
pageCount : (brew.text.match(/\\page/g) || []).length + 1
|
pageCount : brew.pageCount
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
media : { mimeType : 'text/plain',
|
media : { mimeType : 'text/plain',
|
||||||
@@ -198,7 +198,7 @@ GoogleActions = {
|
|||||||
'editId' : nanoid(12),
|
'editId' : nanoid(12),
|
||||||
'title' : brew.title,
|
'title' : brew.title,
|
||||||
'views' : '0',
|
'views' : '0',
|
||||||
'pageCount' : (brew.text.match(/\\page/g) || []).length + 1,
|
'pageCount' : brew.pageCount,
|
||||||
'renderer' : brew.renderer || 'legacy'
|
'renderer' : brew.renderer || 'legacy'
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
@@ -234,7 +234,7 @@ GoogleActions = {
|
|||||||
updatedAt : new Date(),
|
updatedAt : new Date(),
|
||||||
gDrive : true,
|
gDrive : true,
|
||||||
googleId : obj.data.id,
|
googleId : obj.data.id,
|
||||||
pageCount : fileMetadata.properties.pageCount || 1,
|
pageCount : fileMetadata.properties.pageCount,
|
||||||
|
|
||||||
title : brew.title,
|
title : brew.title,
|
||||||
description : brew.description,
|
description : brew.description,
|
||||||
|
|||||||
@@ -38,7 +38,6 @@ const newBrew = (req, res)=>{
|
|||||||
|
|
||||||
brew.authors = (req.account) ? [req.account.username] : [];
|
brew.authors = (req.account) ? [req.account.username] : [];
|
||||||
brew.text = mergeBrewText(brew.text, brew.style);
|
brew.text = mergeBrewText(brew.text, brew.style);
|
||||||
brew.pageCount = (brew.text.match(/\\page/g) || []).length + 1;
|
|
||||||
|
|
||||||
delete brew.editId;
|
delete brew.editId;
|
||||||
delete brew.shareId;
|
delete brew.shareId;
|
||||||
@@ -67,7 +66,6 @@ const updateBrew = (req, res)=>{
|
|||||||
.then((brew)=>{
|
.then((brew)=>{
|
||||||
brew = _.merge(brew, req.body);
|
brew = _.merge(brew, req.body);
|
||||||
brew.text = mergeBrewText(brew.text, brew.style);
|
brew.text = mergeBrewText(brew.text, brew.style);
|
||||||
brew.pageCount = (brew.text.match(/\\page/g) || []).length + 1;
|
|
||||||
|
|
||||||
// Compress brew text to binary before saving
|
// Compress brew text to binary before saving
|
||||||
brew.textBin = zlib.deflateRawSync(brew.text);
|
brew.textBin = zlib.deflateRawSync(brew.text);
|
||||||
|
|||||||
Reference in New Issue
Block a user