Posted by lennart on November 8, 2009 at 8:55am
2 followers
Jump to:
| Project: | Gallery Summary |
| Version: | 6.x-1.0-beta1 |
| Component: | Code |
| Category: | bug report |
| Priority: | normal |
| Assigned: | Unassigned |
| Status: | postponed |
Issue Summary
When a view is embedded in a panel it is sometimes practical to get the URL from the panel to override the views URL for the 'More link'
(The reason being that you may want to be sent to another panel or stay inside the panel with another argument and not be sent outside panels to a simple view)
For some reason the summary display view does not seem to be aware of its context in a panel.
When I set the view up as a pane and choose use 'Use Panel path' under pane settings, the view still just links to a page view. How can I override the URL?
Is there an input setting for this, where I can input the URL manually?
Comments
#1
An example, I have set the summary display view to show 2 results and provide a 'More link' to further results. These results are in a view embedded in another panel:
--------------
Andrea (2)
- Cherry Coke
- Mountain Dew
Paul (7)
- Coca Cola
- Fanta
--More link*
--------------
*The problem: this just links to the page view with the argument, not the other panel where I have the page view embedded.
#2
Good finding! I tried setting the "Override URL" in the panel options for Views and as you said it pointed to the view url instead of the Panel, with a view without summary it works well.
I did some test and looks like this is an issue with Panels and not with this module. If you create a summary view of type "unformatted" or "list" you'll see that Panels doesn't override the "more" url as well, I'll suggest you to report this to Panels issue queue.
Meanwhile you can add a link to the view footer that points to the url you need and remove the "more" link.
Thanks,
Javier
#3
Thanks for responding:
But in that case it is inconsequential because the argument itself (from the list or unformatted style) will send you into another page view in a panel. Page views cannot have 'More' links.
Gallery Summary is different because the display view is not on a separate page but embedded under each argument and as such can have a more link with the argument being carried to a separate page.
Just adding a link in the footer will not do. Such a link would be static and not able to take an argument from the summary.
Really quite complicated for me to even grok completely ;)
#4
And actually, when the page or pane is embedded in the first level - so to speak - you can override the URL from within the panels content settings for that particular page or pane. And it works just fine. I think the problem in our case with Gallery Summary is that the display view (the gallery summary) is a second level view (a view inside a view) embedded in a panel
The first level view URL and it arguments URLs are overridden just fine when set up correctly. An example can be found here (look just under the bright yellow box):
http://forsker.net/blog
In the example I have removed the 'More' links from the summary gallery display view because they do not link to the correct URL. They link to a page view I made whereas the "arguments summary" (in this case the names of the bloggers) do indeed take the overridden URL given through the panels content interface and thereby link to a panel with an argument in the end of its URL (in this case the uid) instead of the view page.
#5
You're right, I was looking at the main "read more" link and not to the summary links, in this case the problem is that I'm embedding a new copy of the view and passing the argument so this mean that it will not have the modifications that Panels did to the main view and that's why the read more urls are not modified.
I'll look for a way to pass the modifications of the main view to each "child" view (maybe just cloning the main view) and post a patch here.
Thanks for taking the time to report this,
Javier
#6
Thank *you* for doing this module :D
#7
There isn't an easy fix for this, I'm changing the status of this issue to postponed until I find an alternative for it.