Skip to content
Snippets Groups Projects
Commit e5279304 authored by Eugen Ciur's avatar Eugen Ciur
Browse files

now can display on left side - commander and viewer

parent cf63b9a4
No related branches found
No related tags found
No related merge requests found
<div class="panel viewer col m-2 p-2">
<Breadcrumb <Breadcrumb
@node={{@model.document_version.document}} @node={{@model.document_version.document}}
@extranode={{@extranode}}
@hint="left" /> @hint="left" />
<div class="d-flex"> <div class="d-flex">
<Viewer::Thumbnails @pages={{@model.pages}} /> <Viewer::Thumbnails @pages={{@model.pages}} />
<Viewer::Pages @pages={{@model.pages}} /> <Viewer::Pages @pages={{@model.pages}} />
</div> </div>
</div>
import Controller from '@ember/controller';
import { action } from '@ember/object';
import { tracked } from "@glimmer/tracking";
import { inject as service } from '@ember/service';
export default class DocumentController extends Controller {
@service currentUser;
@tracked extranode_id = null;
queryParams = ['extranode_id']
@action
onPanelToggle() {
if (this.extranode_id) {
this.extranode_id = null;
} else {
// TODO: get home folder ID from this.currentUser;
this.extranode_id = 75;
}
}
}
import Route from '@ember/routing/route'; import Route from '@ember/routing/route';
import { inject as service } from '@ember/service'; import { inject as service } from '@ember/service';
import RSVP from 'rsvp';
export default class DocumentRoute extends Route { export default class DocumentRoute extends Route {
@service store; @service store;
queryParams = {
extranode_id: {
refreshModel: true
}
};
async model(params) { async model(params) {
let doc_adapter, let doc_adapter,
page_adapter, page_adapter,
node_adapter,
extranode,
document_version, document_version,
pages, pages,
pages_with_url; pages_with_url;
node_adapter = this.store.adapterFor('node');
page_adapter = this.store.adapterFor('page'); page_adapter = this.store.adapterFor('page');
doc_adapter = this.store.adapterFor('document'); doc_adapter = this.store.adapterFor('document');
...@@ -19,6 +29,17 @@ export default class DocumentRoute extends Route { ...@@ -19,6 +29,17 @@ export default class DocumentRoute extends Route {
pages = await document_version.pages; pages = await document_version.pages;
pages_with_url = await page_adapter.loadBinaryImages(pages); pages_with_url = await page_adapter.loadBinaryImages(pages);
if (params.extranode_id) {
extranode = await node_adapter.findNode(params.extranode_id)
return {
'document_version': document_version,
'pages': pages_with_url,
'extranode': extranode
};
}
return { return {
'document_version': document_version, 'document_version': document_version,
'pages': pages_with_url 'pages': pages_with_url
...@@ -28,4 +49,21 @@ export default class DocumentRoute extends Route { ...@@ -28,4 +49,21 @@ export default class DocumentRoute extends Route {
renderTemplate() { renderTemplate() {
this.render('authenticated.viewer'); this.render('authenticated.viewer');
} }
setupController(controller, model) {
let _controller = this.controllerFor('authenticated.document'),
_auth_controller = this.controllerFor('authenticated');
if (model.extranode) {
console.log("Document controller setting dualpanel_mode to true");
_controller.set('dualpanel_mode', true);
_controller.set('extranode', model.extranode);
} else {
_controller.set('dualpanel_mode', false);
_controller.set('extranode', undefined);
}
_controller.set('document_version', model.document_version);
_controller.set('pages', model.pages);
}
} }
<div class="panels d-flex row"> <div class="panels d-flex row">
<Commander <Commander
@node={{this.mainnode}} @node={{this.mainnode}}
......
<Viewer @model={{@model}} /> <div class="panels d-flex row">
\ No newline at end of file <Viewer
@model={{@model}}
@extranode={{this.extranode}}
@onPanelToggle={{this.onPanelToggle}}
@dualPanelMode={{this.dualpanel_mode}}
@hint="left" />
{{#if this.dualpanel_mode}}
<Commander
@node={{this.extranode}}
@extranode={{this.mainnode}}
@onPanelToggle={{this.onPanelToggle}}
@dualPanelMode={{this.dualpanel_mode}}
@hint="right" />
{{/if}}
</div>
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment