Instructions to install mywiwall (specifically on OS X)

3 views
Skip to first unread message

Stephane

unread,
Sep 4, 2009, 9:27:15 AM9/4/09
to talk-abou...@googlegroups.com
Hello,

Since a couple of persons have asked me how to install mywiwall and
try inter-widgets Dn'D, I put some instructions here. They are based
on my last attempt that dates back a few months ago. So just skip this
message if you are not concerned. I post it here in case someone else
needs the same kind of information.

Before you start here is a reminder of the requirements. MyWiWall
requires the following to be installed and configured correctly on the
server:

- PHP 5.0 or newer
- MySQL 4.1 or newer (with InnoDB support)

First, download mywiwall source code and installers. You can do a
checkout from the Google code repository (that's what I did), see http://code.google.com/p/mywiwall/
:

svn checkout http://mywiwall.googlecode.com/svn/trunk/ mywiwall-read-
only

Or you can get a zip archive from there http://palette.tudor.lu/content/index.php?page=palette-services-portal
(follow the "Download Palette Services Portal's installation
package" link)

Second, follow the instructions inside "doc/INSTALL.txt"

When following the instructions, do not forget to make the "widgets"
and "config" directory readable and writable by your web server,
something you can do with a command like:

sudo chgrp www widgets
sudo chmod g+rwx widgets
(and idem with "config")

on Mac OS X, then I had an error when uploading widgets, after some
investigation I found that the reason was that the config.xml manifest
file could not be validated,. My solution is to manually comment the
lines that do the validation (on mac os x) in:

models/UserInterface.class.php

Line 203 and below...

// if (VALIDATE_XML_FILE && !$doc->schemaValidate(XML_SCHEMA_FILE))
// {
// throw new XMLValidationException(MwwException::MODEL,
XML_SCHEMA_FILE);
// }
// else
// {

Widgets.class.php

Line 887 and below

// validate the manifest.
// if (!@$doc->schemaValidate('./schema/manifest.xsd'))
// throw new XMLValidationException(MwwException::MODEL, "The XML
File isn't valid according to the XML Schema.");

Once you have done that and followed the instructions, you then need
some widgets that you can upload to the portal to install them on a
user's page. You can find a few widget examples at http://code.google.com/p/palette-widgets/
(do a checkout).

All the widgets there have a .zip archive that come with their source
code, so you should be able to upload them on your local version of
the portal. Among these widgets, I think only the following ones are
of general interest:

• RssFeedReader
• WebcamsTravel
• googleMapsWidget
• translationWidget
• weatherForecast

Because all the others are linked with PALETTE experimental services
that may not be online when you try them.

For instance you can try Dn'D between the googleMapsWidget and the
weatherForecast widget (or the RssFeedReader and the translationWidget).

If you experience problems with the API Key in widgets that depends on
Google service, it is usually stored in the "config.xml" of the widget
as a preference, so you can change it and put your own key. For
instance in the googleMapsWidget:

<palette:preference name="googleMapsDeveloperKey" datatype="hidden"
default_value
=
"ABQIAAAAV3kwqaJLiyNjgbuoVnTQGRTuyIIaH5oC74pU0qLBWWcrVsv9LhS
-4Rda5sCkZztxVO4txuQAWHep-Q"/>

Finally, if you create your own widgets and if you are on the Mac,
there is an issue when creating zip archives, some of them may not be
recognized by the library used by mywiwall to unzip it. The best thing
is to create the zip archive with the "zip" command line utility":

zip -r -j mywidget.zip mywidget

Thanks for trying and do not hesitate to report on you experience here
in reply to this post,

Stéphane
---

stsire

unread,
Sep 4, 2009, 10:07:14 AM9/4/09
to Talk about Widgets
I just tried again and it seems that we have a problem with the
widgets we used on http://code.google.com/p/palette-widgets/ to
illustrate Dn'D.

First, in the googleMapsWidget, it is no longer possible to use the
map API with the existing key (*). I am not sure how to solve this
problem for a local demo, since on Google MAP API terms of services
(1) they say:

Unless you have entered into a separate written agreement with Google
or obtained Google's written permission, your Maps API Implementation
must not:
(b) operate only behind a firewall or only on an internal network
(except during the development and testing phase).

and on the form to request the API Key they say "Signing up a key for
http://yourdomain.com is usually the best practice, as it will work
for all subdomains and directories.", but then I do not know how to do
if I am testing on a local server with a localhost URL (or a custom
local domain name as you can see on the snapshot of the experiment I
just did with http://portal/). If anybody has a trick that would be
nice.

Second, the translation widget doesn't seem to translate anymore, but
there is no error message. It's using http://translate.google.ch/
service, which doesn't seem to ask an API key, but I cannot actually
figure out why the widget doesn't work...

Stéphane
---

(*) see http://talk-about-widgets.googlegroups.com/web/map-api-problem.png?gsc=AU5WfAsAAACgBr8yj_vYhlzfEnjFddCI

[1] http://code.google.com/apis/maps/terms.html#section_9_1
Reply all
Reply to author
Forward
0 new messages