alabid / flylatex

FlyLatex: A Realtime Collaborative Environment (with a concurrent editor) in node-js.
766 stars 85 forks source link

Spliting of a Latex file into multible files is now possible. #28

Closed DavidSichau closed 11 years ago

DavidSichau commented 11 years ago

Splitting of Latex files into Master and sub documents is possible.

I have changed flylatex such that it can handle split Latex files into several documents. E.g a master document and several sub documents.

Changes

DB Changes:

To enable this an additional db layer was implemented called Project. This is a handler for several documents. Where one of the documents is the master document. The DocPrivileges was changed to contain one project instead of one document.

Sharing:

For sharing I decided that it does not make sense to share individual documents. Only whole projects are synced between the users.

If an user adds an subdocument to an project, the UI of the other users is automatically updated.

User Interface:

I added a dialog to add sub Documents to one of the existing master documents.

Limitations

Hope the code matches your quality criteria. If you have any questions I am willing to help you. Also if you are not happy with some design decisions please inform me such that I can change them.

alabid commented 11 years ago

Hi @DavidSichau, you've done a very good job. The "project" idea is also a very good one.

I cloned your repo and tried to test it. Alas, socket.io doesn't load. Plus, I'm having trouble loading css associated with most pages. I don't know what could cause this problem. If you can fix these problems, I'd checkout your pull request again and merge it (once the problems have been fixed).

DavidSichau commented 11 years ago

Hi, I had to made several changes because I had problems with socket.io when it did not run on localhost but on a shared hosting platform.

Had you runned my repo on localhost?

If so do you know a way how to automatically detect in nodejs if it runs on localhost or on an shared hosting plattform?

DavidSichau commented 11 years ago

Hi @alabid I have tried flylatex when running it via local host. The socket.io was working and also all css was loaded. I run it on Ubuntu 12.04 with firefox and chromonium.

Could you send me your setting such that I can try them.

csoares commented 11 years ago

This would be great to include "project support" on flylatex :)

DavidSichau commented 11 years ago

The last commit change the design to represent the new structure with the projects better.

Feedback to the new design is appreciated.

DavidSichau commented 11 years ago

Can you check again if socket.io works. I have switched to the express 3 framework. And use the socket.io object as an global to be able to seperate the socket.io logic into several files in the future.

alabid commented 11 years ago

Hey @DavidSichau, this pull request is pretty large. It'd take me a while to test it and look through the code. Please bare with me. I'm pretty busy right now (with other stuff).

alabid commented 11 years ago

Still busy. Promise to look at this before the beginning of next week.

alabid commented 11 years ago

Again, the page doesn't seem to be displaying properly. Here's what I get: flylatexhome I'd try to implement this "Project" idea starting Wednesday 4th.