diff --git a/src/background.js b/src/background.js index 95518263..e75f641a 100644 --- a/src/background.js +++ b/src/background.js @@ -112,6 +112,9 @@ browser.runtime.onMessage.addListener( function( request, sender, sendResponse ) case msg.MESSAGE_ACTION.save_site: browser.tabs.create({ url: browser.extension.getURL( "options/options.html#sites?pending=" + encodeURI( JSON.stringify( request.value ))) }); break; + case msg.MESSAGE_ACTION.temp_site: + browser.tabs.create({ url: browser.extension.getURL( "options/options.html#sites?temp=" + encodeURI( JSON.stringify( request.value ))) }); + break; case msg.MESSAGE_ACTION.auth_success: getCurTab( { url: request.value.url }, tabs => { if ( tabs && tabs.length > 0 ) { diff --git a/src/module/siteeditor.jsx b/src/module/siteeditor.jsx index 5587ee20..54f611b9 100644 --- a/src/module/siteeditor.jsx +++ b/src/module/siteeditor.jsx @@ -2,6 +2,8 @@ console.log( "=== simpread option siteeditor ===" ) import { storage } from 'storage'; import * as watch from 'watch'; +import {browser} from 'browser'; +import * as msg from 'message'; import Editor from 'editor'; @@ -86,6 +88,12 @@ class SiteEditor extends React.Component { } } + submit() { + const news = { ...site }; + delete news.html; + browser.runtime.sendMessage( msg.Add( msg.MESSAGE_ACTION.temp_site, { url: location.href, site: news, uid: storage.user.uid, type: "temp" })); + } + componentDidMount() { waves.Render({ root: rootjq }); tooltip.Render( rootjq ); @@ -93,6 +101,9 @@ class SiteEditor extends React.Component { render() { site = { ...storage.pr.current.site }; + if ( storage.pr.state == "temp" ) { + storage.pr.dom && ( site.include = storage.pr.dom.outerHTML.replace( storage.pr.dom.innerHTML, "" ).replace( /<\/\S+>$/i, "" )); + } return ( @@ -100,7 +111,9 @@ class SiteEditor extends React.Component {