Skip to content

Commit

Permalink
https://github.com/bonfire-networks/bonfire-app/issues/860
Browse files Browse the repository at this point in the history
  • Loading branch information
mayel committed Mar 11, 2024
1 parent 0164ea2 commit 76970e5
Show file tree
Hide file tree
Showing 2 changed files with 57 additions and 39 deletions.
94 changes: 56 additions & 38 deletions lib/components/modals/preview_content_live.hooks.js
Original file line number Diff line number Diff line change
Expand Up @@ -24,52 +24,69 @@ let PreviewActivity = {
// this was used to expand long posts by clicking on them, now replaced with a 'Read more' button
// let previewable_activity = e.target.closest('.previewable_activity')
// anchor == trigger || (!anchor && previewable_activity && ( previewable_activity.classList.contains('previewable_expanded') || this.isTruncated(previewable_activity.querySelector('.previewable_truncate')) == false)

if ((trigger || !window.liveSocket) && ((!anchor || anchor.classList.contains('preview_activity_link')) && !e.ctrlKey && !e.metaKey && (!window.getSelection().toString() || window.getSelection().toString() == "") && !e.target.closest('button') && !e.target.closest('figure') && !e.target.closest('.dropdown') && !e.target.closest('[data-id=activity_actions]')
)) {
let uri = this.el.dataset.href || (trigger !== undefined && trigger.getAttribute('href'))
if (window.liveSocket) {
// const feed = document.querySelector(".feed")
const layout = document.getElementById("root")
const main = document.getElementById("inner")
const preview_content = document.getElementById("preview_content")
const extra_contents = document.getElementById("the_extra_contents")

let previous_scroll = null

console.log("push event to load up the PreviewContent")
this.pushEventTo(trigger, "open", {})

// this.pushEvent("Bonfire.Social.Feeds:open_activity", { id: this.el.dataset.id, permalink: uri })
if (window.liveSocket) {

if (layout) {
previous_scroll = layout.scrollTop
}
if (!e.target.closest('#preview_content')) {
// if we're not already in preview_content (i.e. for feed in extra_contents, because it's in a different LV), don't use this and just redirect
console.log("fallback to navigate")
let uri = this.el.dataset.href || (trigger !== undefined && trigger.getAttribute('href'))
if (uri) {
this.pushEvent(
"navigate",
{ to: uri }
)
}

} else {
console.log("push event to load up the PreviewContent")

// const feed = document.querySelector(".feed")
const layout = document.getElementById("root")
const main = document.getElementById("inner")
const preview_content = document.getElementById("preview_content")
const extra_contents = document.getElementById("the_extra_contents")

let previous_scroll = null

this.pushEventTo(trigger, "open", {})

// this.pushEvent("Bonfire.Social.Feeds:open_activity", { id: this.el.dataset.id, permalink: uri })

if (layout) {
previous_scroll = layout.scrollTop
}

if (main) {
main.classList.add("hidden")
}
if (extra_contents) {
extra_contents.classList.add("hidden")
}
if (preview_content) {
preview_content.classList.remove("hidden")
}

if (uri) {
// console.log(uri)

history.pushState(
{
'previous_url': document.location.href,
'previous_scroll': previous_scroll
},
'',
uri)
}

if (main) {
main.classList.add("hidden")
}
if (extra_contents) {
extra_contents.classList.add("hidden")
}
if (preview_content) {
preview_content.classList.remove("hidden")
}

if (uri) {
// console.log(uri)

history.pushState(
{
'previous_url': document.location.href,
'previous_scroll': previous_scroll
},
'',
uri)
e.preventDefault();

}

e.preventDefault();

} else {

// fallback if not connected with live socket
Expand All @@ -83,6 +100,7 @@ let PreviewActivity = {
}
}


} else {

// e.preventDefault();
Expand Down
2 changes: 1 addition & 1 deletion lib/components/widgets/widget_block_live.ex
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ defmodule Bonfire.UI.Common.WidgetBlockLive do

prop widget_title, :string, default: nil

prop class, :css_class, default: "relative w-full mx-auto rounded-xl bg-base-content/5"
prop class, :css_class, default: "flex-auto mx-auto rounded-xl bg-base-content/5"

prop title_class, :css_class, default: "mx-3 py-3 text-base font-bold tracking-wide"

Expand Down

0 comments on commit 76970e5

Please sign in to comment.