MediaWiki's Minerva mobile skin is not showing MediaWiki:Loginprompt - mediawiki

To link new users from Special:Login to Special:RequestAccount I'm using a Message in the MediaWiki:Loginprompt page.
In the default Vector skin it gets shown when logging in, also in the pivot skin, but not when using the mobile MinervaNeue skin, activated with:
wfLoadSkin( 'MinervaNeue' );
$wgMFDefaultSkinClass = 'SkinMinerva';
in LocalSettings.php
Is there a way to show MediaWiki:Loginprompt in Minerva skin or another way of refering users to Special:RequestAccount?

Here you can find all the messages used on the Minerva login page
https://www.mediawiki.org/w/index.php?useskin=minerva&title=Special:UserLogin&uselang=qqx
You could add the desired message to one of the used messages.
For example add this to the bottom of the MediaWiki:Mobile-frontend-generic-login-new page to transclude the desired loginprompt message in that message
{{:MediaWiki:Loginprompt}}

Related

In Google App Maker, how do you display a snackbar message?

I am currently trying to build an application using Google App Maker. After a user hits a "Create" button, depending on whether the files were successfully or unsuccessfully sent, a popup snackbar should display saying "File successfully sent" or "Something went wrong. File not sent." I want to indicate to the user in the final deployed application (no bottom console log) whether their files were sent or not. I do not know how to do this. I have tried creating separate pre-created snackbars (one for success, one for failure) and having the clientscript function display either one depending on what is returned from the serverscript function. However, I do not know how to show them. How do you display a snackbar popup in a clientscript function? Thank you for your help!
Please follow below steps in order to display Snackbar page.
Create a Snackbar page in your appmaker. In order to click on Left Hand Side panel '+' button on the "Page" section.
Choose Pop up. Click "Next" button. On the Next page Select "Snackbar" and click on "Create".
This will create a snack bar page for you. Open the snack bar page. On the bottom part you can see a text box which will display your custom message. Bind a Function to it. Show cased below.
Now in the client script add the following code to configure Snackbar.
This will create a Reusable Snack bar for you for all different messages.
//Client Script
var notificationText='';
function setNotificationText(text)
{
notificationText=text;
}
function getNotificationText()
{
return notificationText;
}
Whenever any event happens add the following code to Display Snackbar.
setNotificationText('Congratulations!!! You have successfully showcased SnackBar');
app.popups.Snackbar.visible = true; //Snackbar is page name.
Here configuring Snackbar code is optional, just to reuse one page for many messages. You can directly showcase the Snackbar page by adding app.popups.Snackbar.visible = true; code in your client script.

Magento show div on checkout from observer

I am writing a custom Magento module to check if a guest user is using an already registered email address.
The module uses the controller_action_predispatch_checkout_onepage_saveBilling observer to do the checks.
What I’m struggling with is how to show (or dynamically insert) a div with an error message somewhere at the bottom of the billing panel.
The observer is working correctly, but now I’m stuck on displaying the error to the user. I was using the following method which will display a JS alert but I now need to include a clickable link..
$response = array('error' => -1, 'message' => Mage::helper('core')->__($errorMsg));
return $controller->getResponse()->setBody(Mage::helper('core')->jsonEncode($response));
Any ideas how to accomplish this?
Thanks
What I think is :
1) create your own jquery click function on the continue button after billing address is entered.
2) Create a div below email input with no text inside it.Keep this div hidden.
3) When user fills the billing details and click on continue, send an ajax request to your custom controller.
4) Check if customer is already present for that email id,if YES : make email ID blank & Make the div in step 2) visible and add the warning message in its innethtml text. Add e.preventDefault() to prevent default savebilling ajax actions of magento.
5) If email id is not present. return true which will continue the default actions of magento.
Any Session setting-getting variables can be little difficult as most of the work on checkout is done by AJAX without refreshing the page.
What you could do is register your error message in your controller, and check for it in your template file.
So in your controller:
Mage::register('error_msg', $myErrorMsg);
And then in your template file:
$errorMsg = Mage::registry('error_msg');
if(!is_null($errorMsg)):
//do your magic here
endif;

SSRS PopUp Message Box

Ive had a request from a client to make a popup box appear on the click of a databar within an SSRS report. Not had any luck with various Google Searches and just wanted to know if anybody has either got this work directly or has any suggestions for a workaround they have used?
Bit of background on the actual report itself, it simply contains a table with various stacked DataBars showing comparable data between multiple users in a system. The ability is needed to click a bar and see which User that bar relates to.
Any suggestions are appreciated.
It's not quite the same thing, but you can use the SSRS tooltips functionality to achieve something similar, i.e. a user will hover over a part of a chart and some contextual text information will be displayed.
Show ToolTips on a Series has some further information.
You can add an action to an object with a javascript popup which can show a specific URL or another report. In the action click on Fx to set an expression as follows:
I used a different script to popup a URL which contains an image url from the database:
="javascript:void(window.open('" + Fields!ImageURL.Value + "', null, 'width=800, height=500, status=no, toolbar=no, menubar=no, location=no'))"
( you can replace Fields!Image.Value with a url , this is the URL from a database field)
a
On a PC this will showup properly sized as a popup. On an iPad it will appear as a new tab.

User profile with map

I'm using Drupal 7 with the following modules to show in the user profile their location.
Locaction
Gmap
With these modules, a map views can be built, or the provided location node displays the "bubbles" on the map.
However, I couldn't find out how to display the location map on the user profile node itself.
There are other modules like GMap CCK Field, but this means double entering the location.
Did I miss anything, or is there any other approach?
If you want to display the map view on the user profile node, then you will have to custom code the user profile template file and add the view to the profile page. Then this will be displayed on the website easily.
Another way to do this can be by creating a block which shows the map view and then using Contexts module to display this block only when the user is viewing the profile page. In the view you have to add the relation on "Author" and then you should have the filter criteria to show map of the logged-in user.
With context, you can say that "when user is on profile page X with path "www.xyz.com/user" then display the block Y in region Z."

incompatible type passed in as a parameter created by loading a GUI component.

I am having a problem with a UI that I am building in a Google Spreadsheet. I will First explain a little about how it works and than I will get to the problem. The UI is fairly simple program that connects to a SQL database, it allows users to create new records, Query, search, and render reports. I have created all the panels (eg the intro page, the create record) in the GUI builder. As the user navigates through the UI I swap out a Grid with the new panel that i want the user to see. For example on the intro page there is a create button when the user clicks the button the gird where there intro panel was is replaced by the create record panel. I have created two ways for the user query/search for data. The first way is to select a number range on the intro panel and click the Query button. This will than query the last 10 or so records into a GUI built Panel that I will call MainForm. The second way is to "search" for a job. On the intro page there is a search button when the user clicks with button it goes to a new page; the grid is switched to the search panel. On the new page/panel the user can put in some parameters to search for. After the user clicks the search button the program should load the search results into the MainForm in the same way as when you Query from the intro page. I have taken the whole function apart line by line, so i am sure that the issue has to do with loading the panel/Component. What i mean by that is these few lines of code.
var Component = app.loadComponent("MainForm");
var panel = app.createVerticalPanel().setSize("770px", "900px").add(Component);
app.getElementById("contentGrid").setWidget(0,0, panel);
But why would it load in one case, but not in another? Also it is not the method of loading the Component, rather it is the returning the panel/ Component.
To Summarize, When I load the Component with the query function it works, but when i load the Component in the search function I get and error: Incompatible type passed in as a parameter. Also I load the MainForm Component in two other functions as and it works most of the time, but some times I get the same error.
I think your approach is not ideal, load component is not supposed to be called multiple times. It would be far more efficient to get all your panels in the same compnent and play with visibility of each panel to show / hide them on demand. Each panel should be inserted in a vertical panel so that the "new panel" slips to its place when the "old one" hides.
An example of this approach is shown in this post to simulate tabs and could easily be adapted to your needs.
btw, this method is also very fast and responsive since the full UI is ready from the very beginning ;-)