Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/site/app/views/developers/validator.thtml
blob: 35f7e7680acbd1f9fe5de42521d7ff0cfc75ea33 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
<?php
/* ***** BEGIN LICENSE BLOCK *****
 * Version: MPL 1.1/GPL 2.0/LGPL 2.1
 *
 * The contents of this file are subject to the Mozilla Public License Version
 * 1.1 (the "License"); you may not use this file except in compliance with
 * the License. You may obtain a copy of the License at
 * http://www.mozilla.org/MPL/
 *
 * Software distributed under the License is distributed on an "AS IS" basis,
 * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
 * for the specific language governing rights and limitations under the
 * License.
 *
 * The Original Code is addons.mozilla.org site.
 *
 * The Initial Developer of the Original Code is
 * The Mozilla Foundation.
 * Portions created by the Initial Developer are Copyright (C) 2009
 * the Initial Developer. All Rights Reserved.
 *
 * Contributor(s):
 *      RJ Walsh <rwalsh@mozilla.com>
 *
 * Alternatively, the contents of this file may be used under the terms of
 * either the GNU General Public License Version 2 or later (the "GPL"), or
 * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
 * in which case the provisions of the GPL or the LGPL are applicable instead
 * of those above. If you wish to allow use of your version of this file only
 * under the terms of either the GPL or the LGPL, and not to allow others to
 * use your version of this file under the terms of the MPL, indicate your
 * decision by deleting the provisions above and replace them with the notice
 * and other provisions required by the GPL or the LGPL. If you do not delete
 * the provisions above, a recipient may use your version of this file under
 * the terms of any one of the MPL, the GPL or the LGPL.
 *
 * ***** END LICENSE BLOCK ***** */

$this->viewVars['bodyclass'] = 'inverse';
$this->layout = 'amo2009';
?>
<script type="text/javascript">
    var verifyurl = '<?= $html->url('/developers/verify/') ?>';
</script>

<?=$this->renderElement('amo2009/hub/navbar', array('addons' => $all_addons));?>

<div id="content-main" class="primary privs" role="main">
    <?= $this->renderElement('developers/addonheader', array('title' => ___('Add-on Validator'), 'addon_id' => 0)) ?>
<?php if (!$this->controller->Session->check('User')): ?>
    <?=sprintf(___('You must <a href="%1$s">log in</a> to validate an add-on.'), $html->url($html->login_url()))?>
<?php else: ?>
    <?=$this->renderElement('noscript')?>
    <?=$this->renderElement('developers/rolecheck')?>

    <div id="submission-area" class="rounded graybox">
        <div id="file-upload">
            <h3><?=___('Validate Your Add-on')?></h3>
            <p><?=___('The Add-on Validator can check your add-on for common packaging and security problems, even if it\'s not hosted here.')?></p>

            <form id="upload-form" method="post" enctype="multipart/form-data" action="<?=$html->url('/developers/json/fileupload/temp')?>" target="upload-frame" onsubmit="return validate.validate();">
            <?=$html->hiddenSession();?>

            <? if(!empty($all_addons)): ?>
            <p><label><?=___('Check my hosted add-on: ')?>
                <select id="addon-list" name="addon-list">
                    <option value=""></option>
                    <? pr($all_addons);foreach ($all_addons as $id => $addon): ?>
                        <option value="<?=$id?>"><?=$addon?></option>
                    <? endforeach; ?>
                </select>
            </label></p>
            <p><strong><?=___(/* L10n: Used as a divider in the page.  One large option is above, one large option below. */ 'OR')?></strong></p>
            <? endif; ?>
            <p><label><?=___('Upload an add-on to check: ')?><input id="upload-field" type="file" name="file" /></label></p>
            <div class="submit">
                <button type="submit" class="require-privs button prominent"><?=___('Run Tests')?></button>
            </div>
            <div id="upload-loading"><?=$html->image('ajax_loading.gif')?>&nbsp;<?=___('Uploading file...')?></div>
            </form>
            <div id="upload-error" class="redbox-tr">
                <div id="upload-error-content">
                    <h4><?=___('Oops! There seems to be a problem with this file...')?></h4>
                    <p id="upload-error-text" class="smallmargin"></p>
                    <p class="smallmargin"><?=___('Please correct this problem and upload your file again.')?></p>
                </div>
            </div>
        </div><!-- /#file-upload -->
    </div><!-- /#submission-area -->

    <?= $this->renderElement('developers/validation', array(
            'pass_message' => ___('All tests passed, well done!'),
            'warn_message' => sprintf(___('We\'ve detected potential issues with your add-on.  Please review the list and upload a new version if the issues are valid.  For more about our add-on validator, see our <a href="%s">validation help page</a>.'), $html->url('/pages/validation')),
            'fail_message' => ___('There were problems with your add-on that prohibit it from being added.  See below for more details.'),
            'new_file_message' => ___('Validate another Add-on'),
            'allow_completion' => false
        )) ?>
<?php endif; ?>
</div>

<iframe id="upload-frame" name="upload-frame" src="" onload="iframeLoaded();" style="display: none;"></iframe>