Index: quintagroup.plonegooglesitemaps/trunk/quintagroup/plonegooglesitemaps/profiles/default/skins.xml
===================================================================
--- quintagroup.plonegooglesitemaps/trunk/quintagroup/plonegooglesitemaps/profiles/default/skins.xml	(revision 1615)
+++ quintagroup.plonegooglesitemaps/trunk/quintagroup/plonegooglesitemaps/profiles/default/skins.xml	(revision 1616)
@@ -1,8 +1,8 @@
 <?xml version="1.0"?>
 <object name="portal_skins">
- <object name="qPloneGoogleSitemaps" meta_type="Filesystem Directory View"
-    directory="qPloneGoogleSitemaps/skins/qPloneGoogleSitemaps"/>
+ <object name="plonegooglesitemaps" meta_type="Filesystem Directory View"
+    directory="quintagroup.plonegooglesitemaps:skins/plonegooglesitemaps"/>
   <skin-path name="*">
-  <layer name="qPloneGoogleSitemaps" insert-after="custom"/>
+  <layer name="plonegooglesitemaps" insert-after="custom"/>
  </skin-path>
 </object>
Index: quintagroup.plonegooglesitemaps/trunk/quintagroup/plonegooglesitemaps/skins/plonegooglesitemaps/getNotAddableTypes.py
===================================================================
--- quintagroup.plonegooglesitemaps/trunk/quintagroup/plonegooglesitemaps/skins/plonegooglesitemaps/getNotAddableTypes.py	(revision 1616)
+++ quintagroup.plonegooglesitemaps/trunk/quintagroup/plonegooglesitemaps/skins/plonegooglesitemaps/getNotAddableTypes.py	(revision 1616)
@@ -0,0 +1,12 @@
+## Script (Python) "getNotAddableTypes"
+##bind container=container
+##bind context=context
+##bind namespace=
+##bind script=script
+##bind subpath=traverse_subpath
+##parameters=
+##title=
+##
+# customize this script to filter addable portal types based on
+# context, the current user or other criteria
+return ('Favorite','Sitemap')
Index: quintagroup.plonegooglesitemaps/trunk/quintagroup/plonegooglesitemaps/skins/plonegooglesitemaps/gsm_create_verify_file.cpy
===================================================================
--- quintagroup.plonegooglesitemaps/trunk/quintagroup/plonegooglesitemaps/skins/plonegooglesitemaps/gsm_create_verify_file.cpy	(revision 1616)
+++ quintagroup.plonegooglesitemaps/trunk/quintagroup/plonegooglesitemaps/skins/plonegooglesitemaps/gsm_create_verify_file.cpy	(revision 1616)
@@ -0,0 +1,25 @@
+## Script (Python) "create_verify_file"
+##bind container=container
+##bind context=context
+##bind namespace=
+##bind script=script
+##bind subpath=traverse_subpath
+##parameters=verify_filename
+##title=Create file for verification
+##
+
+from Products.CMFCore.utils import getToolByName
+from quintagroup.plonegooglesitemaps.utils import BadRequestException
+portal = getToolByName(context, 'portal_url').getPortalObject()
+try:
+    portal.manage_addFile(verify_filename,title='Verification File')
+    portal[verify_filename].manage_addProperty('CreatedBy','quintagroupt.plonegooglesitemaps','string')
+except BadRequestException:
+    pass
+else:
+    props = getToolByName(context,'portal_properties').googlesitemap_properties
+    vfiles = list(props.getProperty('verification_filenames',[]))
+    vfiles.append(verify_filename)
+    props.manage_changeProperties(verification_filenames = vfiles)
+
+return state.set(portal_status_message = 'Plone Google Sitemap updated.')
Index: quintagroup.plonegooglesitemaps/trunk/quintagroup/plonegooglesitemaps/skins/plonegooglesitemaps/gsm_create_verify_file.cpy.metadata
===================================================================
--- quintagroup.plonegooglesitemaps/trunk/quintagroup/plonegooglesitemaps/skins/plonegooglesitemaps/gsm_create_verify_file.cpy.metadata	(revision 1616)
+++ quintagroup.plonegooglesitemaps/trunk/quintagroup/plonegooglesitemaps/skins/plonegooglesitemaps/gsm_create_verify_file.cpy.metadata	(revision 1616)
@@ -0,0 +1,14 @@
+#
+# $$
+#
+[default]
+title=Create verify file
+
+[security]
+View=0:Authenticated
+
+[validators]
+
+[actions]
+action.success=traverse_to:string:prefs_gsm_verification
+action.failure=traverse_to:string:prefs_gsm_verification
Index: quintagroup.plonegooglesitemaps/trunk/quintagroup/plonegooglesitemaps/skins/plonegooglesitemaps/gsm_edit_settings.cpy
===================================================================
--- quintagroup.plonegooglesitemaps/trunk/quintagroup/plonegooglesitemaps/skins/plonegooglesitemaps/gsm_edit_settings.cpy	(revision 1616)
+++ quintagroup.plonegooglesitemaps/trunk/quintagroup/plonegooglesitemaps/skins/plonegooglesitemaps/gsm_edit_settings.cpy	(revision 1616)
@@ -0,0 +1,68 @@
+## Script (Python) "gsm_edit_settings"
+##bind container=container
+##bind context=context
+##bind namespace=
+##bind script=script
+##bind subpath=traverse_subpath
+##bind state=state
+##parameters=
+##title=Configure Plone Google Sitemap
+##
+
+from Products.CMFCore.utils import getToolByName
+from quintagroup.plonegooglesitemaps.utils import ping_google
+
+portal_url = getToolByName(context,'portal_url')
+portalURL = portal_url()
+portal = portal_url.getPortalObject()
+req = context.REQUEST
+message = ""
+
+def addSMByType(parent, sm_type, sm_id):
+    new_id = portal.invokeFactory(id=sm_id, type_name="Sitemap", sitemapType=sm_type)
+    sm = getattr(portal, new_id)
+    if sm:
+        sm.markCreationFlag()
+        return new_id
+    return None
+
+if req.get('form.button.AddContent', False):
+    new_id = addSMByType(portal, 'content', 'sitemap.xml')
+    if new_id:
+        return req.RESPONSE.redirect("%s/%s/edit" % (portalURL, new_id))
+    else:
+        message = "Can't create content sitemap"
+elif req.get('form.button.AddMobile', False):
+    new_id = addSMByType(portal, 'mobile', 'mobile-sitemap.xml')
+    if new_id:
+        return req.RESPONSE.redirect("%s/%s/edit" % (portalURL, new_id))
+    else:
+        message = "Can't create mobile sitemap"
+elif req.get('form.button.AddNews', False):
+    new_id = addSMByType(portal, 'news', 'news-sitemap.xml')
+    if new_id:
+        return req.RESPONSE.redirect("%s/%s/edit" % (portalURL, new_id))
+    else:
+        message = "Can't create news sitemap"
+else:
+    smselected = req.get('smselected', [])
+
+    if req.get('form.button.Delete', False):
+        portal.manage_delObjects(ids=smselected[:])
+        message = "Succesfully deleted: %s" % smselected
+
+    elif req.get('form.button.Ping', False):
+        pinged = []
+        message = "Google pinged. It will review your sitemap as soon as it will be able to. Processed: %s"
+        for sm_id in smselected:
+            try:
+                ping_google(portalURL, sm_id)
+            except:
+                message = "Cannot contact Google. Try again in a while. But pinged for: %s"
+                break
+            else:
+                pinged.append(sm_id)
+        message = message % pinged
+
+return state.set(next_action='traverse_to:string:prefs_gsm_settings',
+                 portal_status_message = message)
Index: quintagroup.plonegooglesitemaps/trunk/quintagroup/plonegooglesitemaps/skins/plonegooglesitemaps/prefs_gsm_overview.cpt
===================================================================
--- quintagroup.plonegooglesitemaps/trunk/quintagroup/plonegooglesitemaps/skins/plonegooglesitemaps/prefs_gsm_overview.cpt	(revision 1616)
+++ quintagroup.plonegooglesitemaps/trunk/quintagroup/plonegooglesitemaps/skins/plonegooglesitemaps/prefs_gsm_overview.cpt	(revision 1616)
@@ -0,0 +1,138 @@
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US"
+      xmlns:metal="http://xml.zope.org/namespaces/metal"
+      xmlns:tal="http://xml.zope.org/namespaces/tal"
+      lang="en-US"
+      metal:use-macro="here/prefs_main_template/macros/master"
+      i18n:domain="qPloneGoogleSitemaps"> 
+
+<body>
+  <div metal:fill-slot="prefs_configlet_main"
+       tal:define="errors python:request.get('errors', {})">
+
+    <div class="documentEditable">
+        <ul class="contentViews">
+            <li class="selected">
+                <a href=""
+                   tal:attributes="href string:${template/id}"
+                   i18n:translate="label_properties">Overview</a>
+            </li>
+
+            <li class="">
+                <a href=""
+                   tal:attributes="href string: prefs_gsm_verification"
+                   i18n:translate="label_properties">Verification</a>
+            </li>
+
+            <li class="">
+               <a href=""
+                  tal:attributes="href string: prefs_gsm_settings">
+                  Settings</a>
+            </li>
+
+        </ul>
+
+        <div class="contentActions">
+        &nbsp;
+        </div>
+        <div class="documentContent">
+            <h1 i18n:translate="heading_plonegooglesitemaps">Plone Google Sitemaps</h1>
+            <a href=""
+            class="link-parent"
+            tal:attributes="href string: $portal_url/plone_control_panel"
+            i18n:translate="label_up_to_plone_setup">
+            Up to Plone Setup
+            </a>
+
+            <div class="documentDescription"
+                i18n:translate="description_plonegooglesitemaps">
+            Plone Google Sitemaps allows search engine to have better visibility of your 
+            <tal:url replace="portal_url" i18n:name="url">example.com</tal:url> 
+            Plone website.
+            </div>
+ 
+            <h2>Post-install instructions</h2>
+
+            <p>Congratulations, you've installed Plone Google Sitemaps product from 
+            Quintagroup.</p>
+
+<!--              -->
+            <dl tal:define="view here/@@sitemap_settings;
+                            sitemaps view/sitemapsURLByType;
+                            all sitemaps/all | nothing">
+            <dt>First step</dt>
+            <dd>To enable Google Sitemaps on your site, add a sitemap at 
+            <a href="prefs_gsm_settings"
+                tal:attributes="href string:$portal_url/prefs_gsm_settings">Google Sitemap settings</a> tab.
+            You can add one of the following sitemap types: <strong>content, mobile or news</strong>.
+            Different sitemap types index their own content and do not depend on other sitemaps.
+            </dd>
+            <dt>Second step</dt>
+            <dd>
+            <tal:condition-true condition="all">
+            Your site is already Google Sitemaps enabled. Check 
+            <tal:loop repeat="smdata all">
+            <a href="google-sitemaps"
+               tal:attributes="href smdata/url"
+               tal:content="smdata/id">sitemap id</a>
+            <span tal:omit-tag=""
+                  tal:condition="not: repeat/smdata/end">,</span>
+            </tal:loop>
+            to see generated sitemap document(s) of your website. 
+            </tal:condition-true>
+            <tal:condition-false condition="not:all">
+            After adding Google Sitemap(s), check whether they where generated correctly.
+            </tal:condition-false>
+
+            They should contain URLs of all published objects. If you see
+            something that should not be indexed by Google, retract objects or
+            exclude sections with robots.txt (that GoogleBot obeys).
+            </dd>
+            <dt>Third step</dt>
+            <dd>Make Google know about your sitemap(s):
+            <ol>
+                <li>go to <a href="https://www.google.com/webmasters/sitemaps">Google 
+                Sitemaps Central</a> (logging in / signing up as necessary)</li>
+                <tal:condition-true condition="all">
+
+                <li>add your sitemap URL(s): 
+                  <ul>
+                    <tal:loop repeat="smdata all">
+                    <li>
+                      <code tal:content="smdata/url">http://example.com/sitemaps.xml</code>
+                    </li>
+                    </tal:loop>
+                  </ul>
+                </tal:condition-true>
+
+                <tal:condition-false condition="not:all">
+                <li>This step will display urls to your sitemap(s) after adding it(them) in previous step(s)</li>
+                </tal:condition-false>
+
+            </ol>
+            It takes a while for your sitemap to be processed by Google. 
+            It usually processes the sitemap within 24 hours so do not expect your 
+            submission to be processed instantly.
+            </dd>
+            </dl>
+            <h2>Helpful resources</h2>
+            <dl>
+            <dt><a href="http://groups-beta.google.com/group/google-sitemaps">google-sitemaps discussion group</a><dt>
+            <dd>As Google Sitemaps is emerging technology, we are all learning from it.
+            Google set up discussion group to find your ideas about it. You can find 
+            help from other webmasters as they usually found answers to questions that 
+            you have. If not you are free to ask, to praise and to ramble ;)</dd>
+            <dt><a href="http://plone.org/products/qplonegooglesitemaps">Plone Google Sitemaps 
+            product page</a></dt>
+            <dd>Stay tuned. We are preparing new and fresh releases. Product page will 
+            help you to keep informed about them.</dd>
+            <dt><a href="http://projects.quintagroup.com/products/wiki/qPloneGoogleSitemaps">Plone Google Sitemaps documentation area.</dt>
+            <dd>Visit product's documentation area to familiarize yourself with quintagroup.plonegooglesitemaps product in
+            more details.
+            </dd>
+
+            </dl>
+        </div>
+    </div>
+  </div>
+</body>
+</html>
Index: quintagroup.plonegooglesitemaps/trunk/quintagroup/plonegooglesitemaps/skins/plonegooglesitemaps/prefs_gsm_settings.cpt
===================================================================
--- quintagroup.plonegooglesitemaps/trunk/quintagroup/plonegooglesitemaps/skins/plonegooglesitemaps/prefs_gsm_settings.cpt	(revision 1616)
+++ quintagroup.plonegooglesitemaps/trunk/quintagroup/plonegooglesitemaps/skins/plonegooglesitemaps/prefs_gsm_settings.cpt	(revision 1616)
@@ -0,0 +1,161 @@
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US"
+      xmlns:metal="http://xml.zope.org/namespaces/metal"
+      xmlns:tal="http://xml.zope.org/namespaces/tal"
+      lang="en-US"
+      metal:use-macro="here/prefs_main_template/macros/master"
+      i18n:domain="qPloneGoogleSitemaps">
+<body>
+    <div metal:fill-slot="prefs_configlet_main"
+        tal:define="errors python:request.get('errors', {})">
+
+        <div class="documentEditable">
+            <ul class="contentViews">
+                <li class="">
+                    <a href=""
+                       tal:attributes="href string: prefs_gsm_overview">
+                       Overview</a>
+                </li>
+                <li class="">
+                    <a href=""
+                       tal:attributes="href string:prefs_gsm_verification">
+                       Verification</a>
+                </li>
+                <li class="selected">
+                <a href=""
+                   tal:attributes="href string:${template/id}">
+                   Settings</a>
+                </li>
+            </ul>
+            <div class="contentActions">
+            &nbsp;
+            </div>
+            <div class="documentContent">
+                <h1 i18n:translate="heading_plonegooglesitemaps">Plone Google Sitemaps</h1>
+                <a href=""
+                   class="link-parent"
+                   tal:attributes="href string: $portal_url/plone_control_panel"
+                   i18n:translate="label_up_to_plone_setup">
+                   Up to Plone Setup
+                </a>
+
+                
+
+                <form name="edit_form"
+                    action="."
+                    method="post"
+                    enctype="multipart/form-data"
+                    tal:attributes="action string:${here_url}/${template/getId}" >
+
+                <fieldset tal:define="view here/@@sitemap_settings;
+                                      sitemaps view/sitemapsDict;">
+                    <legend i18n:translate="legend_plonesitemap_configuration_details">
+                        Google SiteMaps configuration
+                    </legend>
+
+                    <table class="listing"
+                           summary="Sitemaps management"
+                           i18n:attributes="summary summary_sitemaps_management;"
+                           tal:condition="sitemaps">
+                        <thead>
+                            <tr>
+                            <th></th>
+                            <th>Type</th>
+                            <th>Edit Sitemap</th>
+                            <th>Size (bytes)</th>
+                            <th>Entries</th>
+                            </tr>
+                        </thead>
+                        <tbody>
+                            <tal:items tal:repeat="data sitemaps">
+                            <tr tal:define="oddrow repeat/data/odd;"
+                                tal:attributes="class python:test(oddrow, 'even', 'odd')" >
+                                <td>
+                                <input type="checkbox" class="noborder"
+                                        name="smselected:list" id="#" value="#" tabindex=""
+                                        tal:attributes="value    data/sm_id;
+                                                        id       string:cb_${data/sm_id};
+                                                        alt      data/sm_type;
+                                                        title    data/sm_type;
+                                                        tabindex tabindex/next;" />
+                                </td>
+                                <td>
+                                <strong tal:content="data/sm_type"> Sitemap type </strong>
+                                </td>
+                                <td>
+                                <a alt="" title="" href="http://"
+                                    tal:attributes="href string:${data/sm_url}/edit;
+                                                    title data/sm_id;
+                                                    alt string:${data/sm_id}"
+                                    tal:content="data/sm_id">Edit default sitemap type </a>
+                                </td>
+                                <td tal:content="string:${data/sm_size}"> 10 000 in bytes
+                                </td>
+                                <td tal:content="string:${data/sm_entries}"> 50 000 items
+                                </td>
+                            </tr>
+                            </tal:items>
+                            <tr>
+                            <th colspan="3"><strong>Limitations:</strong></th>
+                            <th><strong>10,485,760</strong></th>
+                            <th><strong>50,000</strong></th>
+                            </tr>
+                        </tbody>
+                        </table>
+
+                        <div class="formControls"
+                            tal:define="process_creation request/process_creation|nothing;"
+                            i18n:domain="plone">
+                            <input class="context"
+                                tabindex=""
+                                type="submit"
+                                name="form.button.AddContent"
+                                value="Add Content Sitemap"
+                                i18n:attributes="value"
+                                tal:condition="not:view/hasContentSM"
+                                tal:attributes="tabindex tabindex/next;" />
+                            <input class="context"
+                                tabindex=""
+                                type="submit"
+                                name="form.button.AddMobile"
+                                value="Add Mobile Sitemap"
+                                i18n:attributes="value"
+                                tal:condition="not:view/hasMobileSM"
+                                tal:attributes="tabindex tabindex/next;" />
+                            <input class="context"
+                                tabindex=""
+                                type="submit"
+                                name="form.button.AddNews"
+                                value="Add News Sitemap"
+                                i18n:attributes="value"
+                                tal:condition="not:view/hasNewsSM"
+                                tal:attributes="tabindex tabindex/next;" />
+                            <tal:block condition="sitemaps">
+                            <input class="context"
+                                tabindex=""
+                                type="submit"
+                                name="form.button.Delete"
+                                value="Delete"
+                                i18n:attributes="value"
+                                tal:attributes="tabindex tabindex/next;" />
+                            <input class="context"
+                                tabindex=""
+                                type="submit"
+                                name="form.button.Ping"
+                                value="Ping"
+                                i18n:attributes="value"
+                                tal:attributes="tabindex tabindex/next;" />
+                            </tal:block>
+                        </div>
+
+                    <tal:block condition="sitemaps">
+                    <p><strong>Note</strong>: Ping button allows you to make additional ping (apart from automatic one).</p>
+                    </tal:block>
+
+                    </fieldset>
+                    <input type="hidden" name="form.submitted" value="1" />
+                </form>
+            </div>
+        </div>
+    </div>
+</body>
+</html>
Index: quintagroup.plonegooglesitemaps/trunk/quintagroup/plonegooglesitemaps/skins/plonegooglesitemaps/prefs_gsm_settings.cpt.metadata
===================================================================
--- quintagroup.plonegooglesitemaps/trunk/quintagroup/plonegooglesitemaps/skins/plonegooglesitemaps/prefs_gsm_settings.cpt.metadata	(revision 1616)
+++ quintagroup.plonegooglesitemaps/trunk/quintagroup/plonegooglesitemaps/skins/plonegooglesitemaps/prefs_gsm_settings.cpt.metadata	(revision 1616)
@@ -0,0 +1,19 @@
+#
+# $$
+#
+[default]
+title=Plone Google Sitemap Configuration
+
+[security]
+View=0:Authenticated
+
+[validators]
+
+[actions]
+action.success..AddContent=traverse_to:string:gsm_edit_settings
+action.success..AddMobile=traverse_to:string:gsm_edit_settings
+action.success..AddNews=traverse_to:string:gsm_edit_settings
+action.success..Delete=traverse_to:string:gsm_edit_settings
+action.success..Ping=traverse_to:string:gsm_edit_settings
+action.success=traverse_to:string:gsm_edit_settings
+action.failure=redirect_to:string:prefs_gsm_settings
Index: quintagroup.plonegooglesitemaps/trunk/quintagroup/plonegooglesitemaps/skins/plonegooglesitemaps/prefs_gsm_verification.cpt
===================================================================
--- quintagroup.plonegooglesitemaps/trunk/quintagroup/plonegooglesitemaps/skins/plonegooglesitemaps/prefs_gsm_verification.cpt	(revision 1616)
+++ quintagroup.plonegooglesitemaps/trunk/quintagroup/plonegooglesitemaps/skins/plonegooglesitemaps/prefs_gsm_verification.cpt	(revision 1616)
@@ -0,0 +1,83 @@
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US"
+      xmlns:metal="http://xml.zope.org/namespaces/metal"
+      xmlns:tal="http://xml.zope.org/namespaces/tal"
+      lang="en-US"
+      metal:use-macro="here/prefs_main_template/macros/master"
+      i18n:domain="qPloneGoogleSitemaps"> 
+<body>
+    <div metal:fill-slot="prefs_configlet_main"
+        tal:define="errors python:request.get('errors', {});
+                    view here/@@sitemap_settings;">
+
+        <div class="documentEditable">
+            <ul class="contentViews">
+                <li class="">
+                    <a href=""
+                    tal:attributes="href string: prefs_gsm_overview"
+                    i18n:translate="label_properties">Overview</a>
+                </li>
+
+                <li class="selected">
+                    <a href=""
+                    tal:attributes="href string:${template/id}"
+                    i18n:translate="label_properties">Verification</a>
+                </li>
+
+                <li class="">
+                <a href=""
+                    tal:attributes="href string:prefs_gsm_settings">
+                    Settings</a>
+                </li>
+
+            </ul>
+
+            <div class="contentActions">
+            &nbsp;
+            </div>
+            <div class="documentContent">
+                <h1 i18n:translate="heading_plonegooglesitemaps">Plone Google Sitemaps</h1>
+                <a href=""
+                class="link-parent"
+                tal:attributes="href string: $portal_url/plone_control_panel"
+                i18n:translate="label_up_to_plone_setup">
+                Up to Plone Setup
+                </a>
+
+                <form tal:define="vfiles view/getVerificationFiles;
+                                  step1 python:test(vfiles, 'discreet', '');
+                                  step2 python:test(not vfiles, 'discreet', '')">
+                    <ol>
+                        <li tal:attributes="class step1">
+                            Go to <a href=""
+                                        tal:attributes="href string: https://www.google.com/webmasters/sitemaps/verify?siteUrl=${portal/absolute_url}&hl=en"
+                                        tal:omit-tag="step1">
+                        site verification page</a> and login if necessary.
+                        </li>
+                        <li tal:attributes="class step1">Provide verification file name:
+                            <p><input name="verify_filename" id="verify_filename" type="text"></p>
+                        </li>
+                        <li tal:attributes="class step1">
+                                <input name="form.button.CreateFile" id="create_file" type="submit" value="Create verification file"/>
+                                <input type="hidden" name="form.submitted" value="1" />
+                        </li>
+                        <li class="discreet"
+                            tal:attributes="class step2">Go to <a href=""
+                                        tal:attributes="href string: https://www.google.com/webmasters/sitemaps/verify?siteUrl=${portal/absolute_url}&hl=en"
+                                        tal:omit-tag="step2">
+                        site verification page</a> and press "Check Status" button.
+                        </li>
+                        <li class="discreet"
+                            tal:attributes="class step2"
+                            tal:condition="vfiles">
+                            <strong>Existent verification files:</strong>
+                            <ul><li tal:repeat="vf vfiles"
+                                    tal:content="vf">verification file id
+                            </li></ul>
+                        </li>
+                    </ol>
+                </form>
+            </div>
+        </div>
+    </div>
+</body>
+</html>
Index: quintagroup.plonegooglesitemaps/trunk/quintagroup/plonegooglesitemaps/skins/plonegooglesitemaps/prefs_gsm_verification.cpt.metadata
===================================================================
--- quintagroup.plonegooglesitemaps/trunk/quintagroup/plonegooglesitemaps/skins/plonegooglesitemaps/prefs_gsm_verification.cpt.metadata	(revision 1616)
+++ quintagroup.plonegooglesitemaps/trunk/quintagroup/plonegooglesitemaps/skins/plonegooglesitemaps/prefs_gsm_verification.cpt.metadata	(revision 1616)
@@ -0,0 +1,14 @@
+#
+# $$
+#
+[default]
+title=verification
+
+[security]
+View=0:Authenticated
+
+[validators]
+
+[actions]
+action.success..CreateFile=traverse_to:string:gsm_create_verify_file
+action.failure=traverse_to:string:prefs_gsm_verification
