Magnolia Publication status column - content-management-system

I'm working with Magnolia 5.3 and I want to add the status column in all the apps. This status column shows if a page o resource has been published. I've tried this but it hasn't worked. In the next picture you can see how I see the page app:
You can see the status column as it should be in this picture:
Any ideas?

In the Pages app you will not see a status column if you are logged in to a public instance. This is because the content MUST be published if it visible on the public instance.
Are you looking at a public instance when you see the view above?
Examples:
Author Instance
https://demo.magnolia-cms.com/.magnolia/admincentral#app:pages:;
Public Instance
https://demopublic.magnolia-cms.com/.magnolia/admincentral#app:pages:;

Which apps? All the system apps already have the status column? I guess you mean your own apps. Do they also need buttons on the right to publish and unpublish? Take the contact app as an example and copy from there

Related

tx_news article in restricted area can be accessed via url

I have tx_news installed with TYPO3 8.7. I use the plugin two times, one in a restricted area and the other one in a public area.
I noticed that if I paste a speaking url path segment of an article in the restricted area into the url of the detail page of the public area, the article will be shown without any restrictions.
Example:
The public url of an article is
https://example.com/news/artikel/my_public_article
If I replace now /my_public_article with the speaking url path segment of the restricted article like
https://example.com/news/artikel/my_restricted_article
the article will be shown.
How can I avoid that?
I already set the starting point of the plugin on my public detail page to the public records folder and set recursive to 0.
You can set the following TypoScript:
plugin.tx_news.settings.detail.checkPidOfNewsRecord = 1
From the news documentation:
If set, the detail view checks the incoming news record against the defined starting point(s). If those don’t match, the news record won’t be displayed.
Possible solutions: Set access rights per news record or filter by category in detail view in fluid template (if user is logged in then show record content).

Google Storage - Public link checkbox disappeared

Since a few days ago I was able to get a public link to a file to make it publicly readable in my bucket on Google Storage just by clicking on a checkbox in it's row.
The label of that Checkbox was saying "Public Link".
You can see a screenshot describing what I'm describing:
Image
But, since few days ago, this checkbox has disappeared and to enable a public link for my file I have to go through a window and add permissions for a fake user called allUsers as said in this page
Is there a way to reenable the checkbox?
Is something changed on google storage or have I misconfigured something?
This has been changed on 18th July. Objects can no longer be made public through one-click actions.
As you mentioned all possible ways of making an object public are described here.

Embed API demo not working

I tried using this Google Analytics Embed API Demo, of course with my own ClientID (49803909):
Embed API Demo
However, instead of the graphic I should be getting, I only get a blank page. I did follow the instructions quite carefully. Does this work for others? Any ideas of what may be wrong?
PS: Here's the screenshot of where I am getting the id from. #DaImTo was right that just 49803909 wasn't it, but I also tried to full long string and even the service id below (the one with #), all to the same effect (a blank screen). So, is this the wrong screen then?
I think #DalmTo is correct. You're most likely using one of the many other Google Analytics IDs instead of using a valid Client ID (which is not Google Analytics-specific, it's a general ID used for accessing Google APIs), and you're probably getting errors logged to the JavaScript console that say something to that affect.
If you follow the steps in this Embed API Developer Guide, you'll see instructions on how to create a Client ID to use with the Embed API.

How to set FacebookDisplayName?

I recently hit a problem while trying to integrate FaceBook in an iOS app.
Fortunately I found the answer here:
Facebook SDK: app not registered as a URL Scheme
This is where I have a question:
In the post mentioned above the answer gives the following as the second step:
Create a key called FacebookDisplayName with a string value, and add the Display Name you configured in the App Dashboard.
How do I write this Display Name in case it is changing according to the user Language Settings?
I tried ${DisplayName} or ${CFBundleDisplayName} but I have no confidence I am using the right syntax and name.
In the InfoPlist.strings you can add
FacebookDisplayName = "AppName";
for all the languages you have implemented. This way it will be consistent to the facebook configured details regardless of what your app is really called on the device.

Callback from Facebook app as a tab app on multiple pages

Salon owners can create an account with their salon information on our platform and they get a page that they can use as a tab app.
I want to be able to serve all these pages from one app instead of having to install each one seprately and I also want to make the life of the salon owner easier by helping them to install the tab.
I know about the link I can create to help them install the app and I know that when a visitor visits the app that facebook will send the page ID. So far so good.
https://developers.facebook.com/docs/appsonfacebook/pagetabs/
But how do I make sure that when the salonowner follows the link to install the app that I get the page ID back (through callback or other) so that I can register which page ID belongs to which salon account.
I've read sone 2011 article about a callback but I can't find any recent info on this.
I think it should be possible as a lot of sites offer easy fb apps to businesses.
Any help would be welcome!
EDIT: Could this last piece of info in the Facebook link above be used to do this? I don't quite get it yet.
In addition, your app will also receive a string parameter called app_data as part of signed_request if an app_data parameter was set in the original query string in the URL your tab is loaded on. It could look like this: "https://www.facebook.com/YourPage?v=app_1234567890&app_data=any_string_here". You can use that to customize the content you render if you control the generation of the link.
Well... Preventing users from adding your application to their page is impossible. You can't prevent that.
What you will be able to do is to detect who has added your application and according to that, change the content (or not display it at all). So you'll have to start with a list of "allowed" page_ids to match to the accounts you want.
Your application will receive a signed_request each time a user arrives at your application (within a page). Inside that signed_request is information not only on the user but also on the page that the application is on (provided it is a page tab app).
Once you have obtained the signed_request, it will hold a page key which contains:
A JSON object containing the page id string, the liked boolean (set to
true if the user has liked the page, false if not) and the admin
boolean (set to true if the user is an admin of the page, false if
they're not). This field is only present if your app is being loaded
within a Page Tab.
So you'll be able to access the page_id from within this variable and make a decision on the type of content you want to be displayed.
Ok, after running some tests I found out that when you add a URL as 'next' parameter to the install URL Facebook will send the admin(user) back to this URL while adding an array to the request containing all the page Id's the app was installed to.
Like this: YOUR_CALLBACK_URL?tabs_added[ID]=1
Proved to be quite easy in the end