Skip to content

Commit

Permalink
Merge pull request #12 from ONLYOFFICE/develop
Browse files Browse the repository at this point in the history
Release/1.0.0
  • Loading branch information
LinneyS authored Apr 28, 2023
2 parents c66d9a8 + 841a417 commit e6f9dac
Show file tree
Hide file tree
Showing 77 changed files with 34,215 additions and 0 deletions.
9 changes: 9 additions & 0 deletions .dockerignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
.vscode
.env
node_modules
npm-debug.log
hooks
Dockerfile
credentials.json
docker-compose.yml
deploy.yaml
13 changes: 13 additions & 0 deletions .env.docker.example
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
PRODUCT_VERSION=latest

# Postgresql #
POSTGRES_PASSWORD=confluence_secret_password
POSTGRES_USER=confluencecloud
POSTGRES_DB=confluencecloud

# Confluence-cloud #
NODE_ENV=production
AC_OPTS=no_reg
AC_LOCAL_BASE_URL=https://onlyoffice-confluence-cloud.com
PORT=3000
DATABASE_URL=postgres://${POSTGRES_USER}:${POSTGRES_PASSWORD}@postgresql:5432/${POSTGRES_DB}
28 changes: 28 additions & 0 deletions .eslintrc.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
{
"env": {
"node": true,
"es6": true
},
"extends": [
"eslint:recommended",
"plugin:react/recommended"
],
"globals": {
"Atomics": "readonly",
"SharedArrayBuffer": "readonly"
},
"parserOptions": {
"ecmaVersion": 2018,
"sourceType": "module"
},
"rules": {
"no-console": "off",
"no-unused-vars": ["error", {"argsIgnorePattern": "^_", "varsIgnorePattern": "^_"}],
"react/prop-types": "off"
},
"settings": {
"react": {
"version": "detect"
}
}
}
11 changes: 11 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
*.iml
*.idea
.DS_Store
node_modules
*.pem
credentials.json
.cache
views/*.js
views/*.js.map
views/node
*.vscode
119 changes: 119 additions & 0 deletions 3rd-Party.license
Original file line number Diff line number Diff line change
@@ -0,0 +1,119 @@
Confluence cloud ONLYOFFICE integration app uses code from the following 3rd party projects.

Atlaskit - Atlassian's official UI library, built according to the Atlassian Design System. (https://bitbucket.org/atlassian/atlassian-frontend-mirror/src/master/LICENSE)
License: Apache 2.0
License File: atlaskit.license

atlassian-connect-express - (ACE) is a toolkit for creating Atlassian Connect based Add-ons with Node.js. (https://bitbucket.org/atlassian/atlassian-connect-express/src/master/LICENSE.txt)
License: Apache 2.0
License File: atlassian-connect-express.license

body-parser - Node.js body parsing middleware. (https://github.com/expressjs/body-parser/blob/master/LICENSE)
License: MIT
License File: body-parser.license

compression - Node.js compression middleware. (https://github.com/expressjs/compression/blob/master/LICENSE)
License: MIT
License File: compression.license

cookie-parser - Parse HTTP request cookies. (https://github.com/expressjs/cookie-parser/blob/master/LICENSE)
License: MIT
License File: cookie-parser.license

errorhandler - Development-only error handler middleware. (https://github.com/expressjs/errorhandler/blob/master/LICENSE)
License: MIT
License File: errorhandler.license

esm - The brilliantly simple, babel-less, bundle-less ECMAScript module loader. (https://github.com/standard-things/esm/blob/master/LICENSE)
License: MIT
License File: esm.license

express - Fast, unopinionated, minimalist web framework. (https://github.com/expressjs/express/blob/master/LICENSE)
License: MIT
License File: express.license

express-hbs - Express handlebars template engine complete with multiple layouts, partials and blocks. (https://github.com/TryGhost/express-hbs/blob/main/LICENSE)
License: MIT
License File: express-hbs.license

i18n - Lightweight translation module with dynamic json storage. (https://github.com/mashpie/i18n-node/blob/master/LICENSE)
License: MIT
License File: i18n.license

helmet - Help secure Express/Connect apps with various HTTP headers. (https://github.com/helmetjs/helmet/blob/main/LICENSE)
License: MIT
License File: helmet.license

morgan - HTTP request logger middleware for node.js. (https://github.com/expressjs/morgan/blob/master/LICENSE)
License: MIT
License File: morgan.license

nocache - Middleware to destroy caching. (https://github.com/helmetjs/nocache/blob/main/LICENSE)
License: MIT
License File: nocache.license

react - React is a JavaScript library for creating user interfaces. (https://github.com/facebook/react/blob/main/LICENSE)
License: MIT
License File: react.license

react-dom - This package serves as the entry point to the DOM and server renderers for React. (https://github.com/facebook/react/blob/main/LICENSE)
License: MIT
License File: react-dom.license

sequelize - Sequelize is an easy-to-use and promise-based Node.js ORM tool for Postgres, MySQL, MariaDB, SQLite, DB2, Microsoft SQL Server, and Snowflake. (https://github.com/sequelize/sequelize/blob/main/LICENSE)
License: MIT
License File: sequelize.license

styled-components - Visual primitives for the component age. (https://github.com/styled-components/styled-components/blob/main/LICENSE)
License: MIT
License File: styled-components.license

axios - Promise based HTTP client for the browser and node.js. (https://github.com/axios/axios/blob/v1.x/LICENSE)
License: MIT
License File: axios.license

atlassian-jwt - JWT (JSON Web Token) implementation with custom Atlassian QSH claim verification. (https://bitbucket.org/atlassian/atlassian-jwt-js)
License: MIT

babel - The compiler for writing next generation JavaScript. (https://github.com/babel/babel/blob/main/LICENSE)
License: MIT
License File: babel.license

babel-plugin-styled-components - Improve the debugging experience and add server-side rendering support to styled-components. (https://github.com/styled-components/babel-plugin-styled-components/blob/main/LICENSE.md)
License: MIT
License File: babel-plugin-styled-components.license

concurrently - Run commands concurrently. (https://github.com/open-cli-tools/concurrently/blob/main/LICENSE)
License: MIT
License File: concurrently.license

eslint - An AST-based pattern checker for JavaScript. (https://github.com/eslint/eslint/blob/main/LICENSE)
License: MIT
License File: eslint.license

eslint-plugin-react - React specific linting rules for ESLint. (https://github.com/jsx-eslint/eslint-plugin-react/blob/master/LICENSE)
License: MIT
License File: eslint-plugin-react.license

longjohn - Long stack traces for node.js inspired by https://github.com/tlrobinson/long-stack-traces. (https://github.com/mattinsler/longjohn/blob/master/LICENSE-MIT)
License: MIT
License File: longjohn.license

ngrok - Node wrapper for ngrok. (https://github.com/bubenshchykov/ngrok)
License: BSD-2-Clause

nodemon - Simple monitor script for use during development of a Node.js app. (https://github.com/remy/nodemon/blob/main/LICENSE)
License: MIT
License File: nodemon.license

parcel-bundler - Blazing fast, zero configuration web application bundler. (https://github.com/parcel-bundler/parcel/blob/v2/LICENSE)
License: MIT
License File: parcel-bundler.license

parcel-plugin-externals - A plugin for Parcel to omit declared externals from being included in the emitted bundles. (https://github.com/FlorianRappl/parcel-plugin-externals/blob/master/LICENSE)
License: MIT
License File: parcel-plugin-externals.license

sqlite3 - Asynchronous, non-blocking SQLite3 bindings. (https://github.com/TryGhost/node-sqlite3/blob/master/LICENSE)
License: BSD 3-Clause
License File: sqlite3.license
4 changes: 4 additions & 0 deletions AUTHORS.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
# Authors

* Ascensio System SIA: <integration@onlyoffice.com>

8 changes: 8 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
# Change Log

## 1.0.0
## Added
- configuration page
- collaboration editing for DOCX, XLSX, PPTX
- view option DJVU, DOC, DOCM, DOCX, DOT, DOTM, DOTX, EPUB, FB2, FODT, HTML, MHT, ODT, OTT, OXPS, PDF, RTF, TXT, XPS, XML, CSV, FODS, ODS, OTS, XLS, XLSM, XLSX, XLT, XLTM, XLTX, FODP, ODP, OTP, POT, POTM, POTX, PPS, PPSM, PPSX, PPT, PPTM, PPTX
- JWT support
14 changes: 14 additions & 0 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
FROM node:16-alpine AS confluence-cloud
LABEL maintainer Ascensio System SIA <support@onlyoffice.com>
ARG NODE_ENV=production
ARG AC_OPTS=no_reg
ARG PORT=3000
ENV NODE_ENV=$NODE_ENV \
AC_OPTS=$AC_OPTS \
PORT=$PORT
WORKDIR /usr/src/app
COPY ./package*.json ./
RUN npm install
COPY . .
EXPOSE $PORT
CMD [ "npm", "start" ]
1 change: 1 addition & 0 deletions Procfile
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
web: npm start
116 changes: 116 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,116 @@
# ONLYOFFICE integration app for Confluence Cloud

This integration app enables users to edit office documents in [Confluence Cloud](https://www.atlassian.com/software/confluence/premium) using ONLYOFFICE Docs.

## Features

The app allows to:

* View and edit text documents, spreadsheets, and presentations.
* Co-edit documents in real-time using two co-editing modes (Fast and Strict), Track Changes, comments, built-in chat.

## Installing ONLYOFFICE Docs

To be able to edit documents in Confluence Cloud, you will need an instance of ONLYOFFICE Docs (Document Server). You can install free Community version or scalable Enterprise Edition.

To install free Community version, use [Docker](https://github.com/onlyoffice/Docker-DocumentServer) (recommended) or follow [these instructions](https://helpcenter.onlyoffice.com/installation/docs-community-install-ubuntu.aspx) for Debian, Ubuntu, or derivatives.

To install Enterprise Edition, follow the instructions [here](https://helpcenter.onlyoffice.com/installation/docs-enterprise-index.aspx).

Community Edition vs Enterprise Edition comparison can be found [here](#onlyoffice-docs-editions).

## Configuring the integration app

Administrators can configure ONLYOFFICE integration app via the Manage Apps section in Confluence Cloud (Apps -> Manage Apps -> Confluence cloud ONLYOFFICE integration app -> Configure). On the configuration page, set up:

* **Document Editing Service Address**: The URL of the installed ONLYOFFICE Document Server.

* **Secret key**: Enables JWT to protect your documents from unauthorized access (further information can be found [here](https://api.onlyoffice.com/editors/signature/)).

* **JWT Header**.

## Using ONLYOFFICE integration app for Confluence Cloud

In the Pages module, you can attach files to the created pages: open the right context menu, click on the Attachments item and upload a file from the device.

The uploaded file will appear in the Attachments list. To launch the editor, click **Edit in ONLYOFFICE**. The file opens in the same window. The changes made are saved in the same file.

If you try to open a file that is not supported by ONLYOFFICE Docs (for example, jpg), an error window will appear.

## ONLYOFFICE Docs editions

ONLYOFFICE offers different versions of its online document editors that can be deployed on your own servers.

**ONLYOFFICE Docs** packaged as Document Server:

* Community Edition (`onlyoffice-documentserver` package)
* Enterprise Edition (`onlyoffice-documentserver-ee` package)

The table below will help you make the right choice.

| Pricing and licensing | Community Edition | Enterprise Edition |
| ------------- | ------------- | ------------- |
| | [Get it now](https://www.onlyoffice.com/download-docs.aspx?utm_source=github&utm_medium=cpc&utm_campaign=GitHubConfluenceCloud#docs-community) | [Start Free Trial](https://www.onlyoffice.com/download-docs.aspx?utm_source=github&utm_medium=cpc&utm_campaign=GitHubConfluenceCloud#docs-enterprise) |
| Cost | FREE | [Go to the pricing page](https://www.onlyoffice.com/docs-enterprise-prices.aspx?utm_source=github&utm_medium=cpc&utm_campaign=GitHubConfluenceCloud) |
| Simultaneous connections | up to 20 maximum | As in chosen pricing plan |
| Number of users | up to 20 recommended | As in chosen pricing plan |
| License | GNU AGPL v.3 | Proprietary |
| **Support** | **Community Edition** | **Enterprise Edition** |
| Documentation | [Help Center](https://helpcenter.onlyoffice.com/installation/docs-community-index.aspx) | [Help Center](https://helpcenter.onlyoffice.com/installation/docs-enterprise-index.aspx) |
| Standard support | [GitHub](https://github.com/ONLYOFFICE/DocumentServer/issues) or paid | One year support included |
| Premium support | [Contact us](mailto:sales@onlyoffice.com) | [Contact us](mailto:sales@onlyoffice.com) |
| **Services** | **Community Edition** | **Enterprise Edition** |
| Conversion Service | + | + |
| Document Builder Service | + | + |
| **Interface** | **Community Edition** | **Enterprise Edition** |
| Tabbed interface | + | + |
| Dark theme | + | + |
| 125%, 150%, 175%, 200% scaling | + | + |
| White Label | - | - |
| Integrated test example (node.js) | + | + |
| Mobile web editors | - | +* |
| **Plugins & Macros** | **Community Edition** | **Enterprise Edition** |
| Plugins | + | + |
| Macros | + | + |
| **Collaborative capabilities** | **Community Edition** | **Enterprise Edition** |
| Two co-editing modes | + | + |
| Comments | + | + |
| Built-in chat | + | + |
| Review and tracking changes | + | + |
| Display modes of tracking changes | + | + |
| Version history | + | + |
| **Document Editor features** | **Community Edition** | **Enterprise Edition** |
| Font and paragraph formatting | + | + |
| Object insertion | + | + |
| Adding Content control | + | + |
| Editing Content control | + | + |
| Layout tools | + | + |
| Table of contents | + | + |
| Navigation panel | + | + |
| Mail Merge | + | + |
| Comparing Documents | + | + |
| **Spreadsheet Editor features** | **Community Edition** | **Enterprise Edition** |
| Font and paragraph formatting | + | + |
| Object insertion | + | + |
| Functions, formulas, equations | + | + |
| Table templates | + | + |
| Pivot tables | + | + |
| Data validation | + | + |
| Conditional formatting | + | + |
| Sparklines | + | + |
| Sheet Views | + | + |
| **Presentation Editor features** | **Community Edition** | **Enterprise Edition** |
| Font and paragraph formatting | + | + |
| Object insertion | + | + |
| Transitions | + | + |
| Presenter mode | + | + |
| Notes | + | + |
| **Form creator features** | **Community Edition** | **Enterprise Edition** |
| Adding form fields | + | + |
| Form preview | + | + |
| Saving as PDF | + | + |
| | [Get it now](https://www.onlyoffice.com/download-docs.aspx?utm_source=github&utm_medium=cpc&utm_campaign=GitHubConfluenceCloud#docs-community) | [Start Free Trial](https://www.onlyoffice.com/download-docs.aspx?utm_source=github&utm_medium=cpc&utm_campaign=GitHubConfluenceCloud#docs-enterprise) |

\* If supported by DMS.

In case of technical problems, the best way to get help is to submit your issues [here](https://github.com/ONLYOFFICE/onlyoffice-confluence-cloud/issues). Alternatively, you can contact ONLYOFFICE team on [forum.onlyoffice.com](https://forum.onlyoffice.com/).
Loading

0 comments on commit e6f9dac

Please sign in to comment.