コード例 #1
0
ファイル: reconcileusers.php プロジェクト: gillima/phplist3
     flush();
     $req = Sql_Query("select id,email from {$tables['user']}");
     $c = 0;
     while ($row = Sql_Fetch_Array($req)) {
         set_time_limit(60);
         #    if (checkMemoryAvail())
         if (!is_email($row['email'])) {
             ++$c;
             $fixemail = fixEmail($row['email']);
             if (is_email($fixemail)) {
                 Sql_Query(sprintf('update %s set email = "%s" where id = %d', $tables['user'], $fixemail, $row['id']), 0);
                 $list .= PageLink2('user&amp;id=' . $row['id'] . '&returnpage=reconcileusers&returnoption=fixinvalidemail', $GLOBALS['I18N']->get('User') . ' ' . $row['id']) . '    [' . $row['email'] . '] => fixed to ' . $fixemail . '<br/>';
                 ++$fixed;
             } else {
                 ++$notfixed;
                 $list .= PageLink2('user&amp;id=' . $row['id'] . '&returnpage=reconcileusers&returnoption=fixinvalidemail', $GLOBALS['I18N']->get('User') . ' ' . $row['id']) . '    [' . $row['email'] . ']<br/>';
             }
         }
     }
     print $fixed . ' ' . $GLOBALS['I18N']->get('subscribers fixed') . '<br/>' . $notfixed . ' ' . $GLOBALS['I18N']->get('subscribers could not be fixed') . '<br/>' . $list . "\n";
 } elseif (isset($_GET['option']) && $_GET['option'] == 'deleteinvalidemail') {
     include 'actions/reconcileusers.php';
 } elseif (isset($_GET['option']) && $_GET['option'] == 'markinvalidunconfirmed') {
     Info($GLOBALS['I18N']->get('Marking subscribers with an invalid email as unconfirmed'));
     flush();
     $req = Sql_Query("select id,email from {$tables['user']}");
     $c = 0;
     while ($row = Sql_Fetch_Array($req)) {
         set_time_limit(60);
         if (!is_email($row['email'])) {
             ++$c;
コード例 #2
0
ファイル: footer.php プロジェクト: jbeigh/phplist-lan-help
<h3>Подвал сообщения или нижний колонтитул</h3>

<p>Нижний колонтитул письма необходим по нескольким очень важным причинам. При переадресации сообщения на другой адрес эл. почты, нижний колонтитул изменится на другой, что позволяет настроить содержимое, более подходящее для тех, кто ещё не подписан на Вашу информационную рассылку и предложить им подписаться.</p>

<p>Вы можете настроить стандартный подвал в
<?php 
## for translators, you can translater the word "Configuration" below
echo PageLink2('configure&id=messagefooter', 'Конфигурации');
?>
</p>

<p>Допускается использование нескольких меток, которые помогут Вашим подписчикам определить, что за письмо они получили и что делать с ним дальше. 

<ul>
<li><b>[UNSUBSCRIBEURL]</b> - ссылка для отказа от подписки</li>
<li><b>[PREFERENCESURL]</b> - ссылка на страницу, где подписчики могут изменить свои учётные данные</li>
<li><b>[FORWARDURL]</b> - ссылка на то, чтобы переслать письмо кому-либо ещё</li>
<li><b>[EMAIL]</b> - адрес электронной почты</li>
<li><b>[USERID]</b> - уникальный идентификатор подписчика</li>
<li><b>[USERTRACK]</b> - код для отслеживания открытий кампании подписчиками</li>
</ul>
</p>

<h3>Предлагаемый нижний колонтитул</h3>
<div class="suggestion">
<pre>
--
&lt;h2&gt;Это письмо отправлено на адрес [EMAIL] от <?php 
echo getConfig('message_from_name') . ' ' . getConfig('admin_address');
?>
&lt;/h2&gt;
コード例 #3
0
{
    if (!$id) {
        return;
    }
    $data = Sql_Fetch_Array_Query("select * from groups where id = {$id}");
    return $data["name"];
}
require dirname(__FILE__) . '/structure.php';
$struct = $DBstruct["user"];
if (isset($_GET['list'])) {
    echo "<br />" . PageLink2("members", "Back to Members of this list", "id={$list}") . "\n";
}
if (isset($start)) {
    echo "<br />" . PageLink2("users", "Back to the list of users", "start={$start}&unconfirmed=" . $_GET["unconfirmed"]) . "\n";
}
if ($find) {
    echo "<br />" . PageLink2("users", "Back to the search results", "start={$start}&find=" . urlencode($find) . "&findby=" . urlencode($findby) . "&unconfirmed=" . $_GET["unconfirmed"] . "\n");
}
if ($returnpage) {
    if ($returnoption) {
        $more = "&option=" . $returnoption;
    }
    echo "<br/>" . PageLink2("{$returnpage}{$more}", "Return to {$returnpage}");
    $returnurl = "returnpage={$returnpage}&returnoption={$returnoption}";
}
include dirname(__FILE__) . '/commonlib/pages/user.php';
return;
?>


コード例 #4
0
ファイル: userhistory.php プロジェクト: juvenal/PHPlist
    abs(unix_timestamp(entered) - unix_timestamp(viewed)) as responsetime from %s where userid = %d and status = "sent"', $tables["usermessage"], $user["id"]));
    $num = Sql_Affected_Rows();
} else {
    $num = 0;
}
printf('%d ' . $GLOBALS['I18N']->get('messages sent to this user') . '<br/>', $num);
if ($num) {
    $resptime = 0;
    $totalresp = 0;
    while ($msg = Sql_Fetch_Array($msgs)) {
        $ls->addElement($msg["messageid"], PageURL2("message", $GLOBALS['I18N']->get('view'), "id=" . $msg["messageid"]));
        if (defined('CLICKTRACK') && CLICKTRACK) {
            $clicksreq = Sql_Fetch_Row_Query(sprintf('select sum(clicked) as numclicks from %s where userid = %s and messageid = %s', $GLOBALS['tables']['linktrack_uml_click'], $user['id'], $msg['messageid']));
            $clicks = sprintf('%d', $clicksreq[0]);
            if ($clicks) {
                $ls->addColumn($msg["messageid"], $GLOBALS['I18N']->get('clicks'), PageLink2('userclicks&amp;userid=' . $user['id'] . '&amp;msgid=' . $msg['messageid'], $clicks));
            } else {
                $ls->addColumn($msg["messageid"], $GLOBALS['I18N']->get('clicks'), 0);
            }
        }
        $ls->addColumn($msg["messageid"], $GLOBALS['I18N']->get('sent'), formatDateTime($msg["entered"], 1));
        if (!$msg['notviewed']) {
            $ls->addColumn($msg["messageid"], $GLOBALS['I18N']->get('viewed'), formatDateTime($msg["viewed"], 1));
            $ls->addColumn($msg["messageid"], $GLOBALS['I18N']->get('responsetime'), $msg['responsetime']);
            $resptime += $msg['responsetime'];
            $totalresp += 1;
        }
        if (!empty($bounces[$msg["messageid"]])) {
            $ls->addColumn($msg["messageid"], $GLOBALS['I18N']->get('bounce'), $bounces[$msg["messageid"]]);
        }
    }
コード例 #5
0
    $listing = sprintf($GLOBALS['I18N']->get("Listing user %d to %d"), $start, $start + MAX_USER_PP);
    $limit = "limit {$start}," . MAX_USER_PP;
} else {
    $listing = sprintf($GLOBALS['I18N']->get("Listing user %d to %d"), 1, MAX_USER_PP);
    $limit = "limit 0," . MAX_USER_PP;
    $start = 0;
}
if ($id) {
    $url_keep = '&amp;id=' . $id;
} else {
    $url_keep = '';
}
print $total . " " . $GLOBALS['I18N']->get("Entries") . "</p>";
if ($total) {
    printf('<table border=1><tr><td colspan=4 align=center>%s</td></tr><tr><td>%s</td><td>%s</td><td>
          %s</td><td>%s</td></tr></table><p><hr>', $listing, PageLink2("mviews{$url_keep}", "&lt;&lt;", "start=0"), PageLink2("mviews{$url_keep}", "&lt;", sprintf('start=%d', max(0, $start - MAX_USER_PP))), PageLink2("mviews{$url_keep}", "&gt;", sprintf('start=%d', min($total, $start + MAX_USER_PP))), PageLink2("mviews{$url_keep}", "&gt;&gt;", sprintf('start=%d', $total - MAX_USER_PP)));
}
$req = Sql_Query(sprintf('select userid,email,um.entered as sent,min(um.viewed) as firstview,
    max(um.viewed) as lastview, count(um.viewed) as viewcount,
    abs(unix_timestamp(um.entered) - unix_timestamp(um.viewed)) as responsetime
    from %s um, %s user, %s msg where um.messageid = %d and um.messageid = msg.id and um.userid = user.id and um.viewed is not null %s
    group by userid %s', $GLOBALS['tables']['usermessage'], $GLOBALS['tables']['user'], $GLOBALS['tables']['message'], $id, $subselect, $limit));
$summary = array();
while ($row = Sql_Fetch_Array($req)) {
    $element = '<!--' . $row['userid'] . '-->' . $row['email'];
    $ls->addElement($element, PageUrl2('userhistory&id=' . $row['userid']));
    $ls->addColumn($element, $GLOBALS['I18N']->get('sent'), formatDateTime($row['sent']));
    if ($row['viewcount'] > 1) {
        $ls->addColumn($element, $GLOBALS['I18N']->get('firstview'), formatDateTime($row['firstview'], 1));
        $ls->addColumn($element, $GLOBALS['I18N']->get('lastview'), formatDateTime($row['lastview']));
        $ls->addColumn($element, $GLOBALS['I18N']->get('views'), $row['viewcount']);
コード例 #6
0
ファイル: statsmgt.php プロジェクト: dehvCurtis/phplist
<?php

require_once dirname(__FILE__) . '/accesscheck.php';
print '<ul class="dashboard_button">';
print "<li class='statistics'>" . PageLink2("statsoverview", $GLOBALS['I18N']->get('Overview')) . "</li>";
print "<li class='statistics'>" . PageLink2("uclicks", $GLOBALS['I18N']->get('View Clicks by URL')) . "</li>";
print "<li class='statistics'>" . PageLink2("mclicks", $GLOBALS['I18N']->get('View Clicks by Message')) . "</li>";
print "<li class='statistics'>" . PageLink2("mviews", $GLOBALS['I18N']->get('View Opens by Message')) . "</li>";
print "<li class='statistics'>" . PageLink2("domainstats", $GLOBALS['I18N']->get('Domain Statistics')) . "</li>";
print '</ul>';
$num = Sql_Fetch_Row_Query(sprintf('select count(*) from %s', $GLOBALS['tables']['linktrack']));
if ($num[0] > 0) {
    print '<p class="information">' . $GLOBALS['I18N']->get('The clicktracking system has changed') . '</p>';
    printf($GLOBALS['I18N']->get('You have %s entries in the old statistics table'), $num[0]);
    print "<div class='clear'></div><div class='button'>" . PageLink2("convertstats", $GLOBALS['I18N']->get('Convert Old data to new')) . "</div>";
    print '<p class="information">' . $GLOBALS['I18N']->get('To avoid overloading the system, this will convert 10000 records at a time') . '</p>';
}
コード例 #7
0
ファイル: upgrade.php プロジェクト: radicaldesigns/amp
        print '<script language="Javascript" type="text/javascript"> finish(); </script>';
        # update the system pages
        while (list($type, $pages) = each($system_pages)) {
            foreach ($pages as $page) {
                Sql_Query(sprintf('replace into %s (page,type) values("%s","%s")', $tables["task"], $page, $type));
            }
        }
        # mark the database to be our current version
        if ($success) {
            SaveConfig("version", VERSION, 0);
            # mark now to be the last time we checked for an update
            Sql_Query(sprintf('replace into %s (item,value,editable) values("updatelastcheck",now(),0)', $tables["config"]));
            Info("Success");
        } else {
            Error("An error occurred while upgrading your database");
        }
    } else {
        ?>
<p>Your database requires upgrading, please make sure to create a backup of your database first.</p>

<p>When you're ready click <?php 
        echo PageLink2("upgrade", "Here", "doit=yes");
        ?>
. Depending on the size of your database, this may take quite a while. Please make sure not to interrupt the process, once you've started it.</p>
<?php 
    }
}
?>
</td></tr></table>
</div>
コード例 #8
0
    }
}
#
if ($success) {
    # mark the database to be our current version
    Sql_Query(sprintf('replace into %s (item,value,editable) values("version","%s",0)', $tables["config"], VERSION));
    # mark now to be the last time we checked for an update
    Sql_Query(sprintf('replace into %s (item,value,editable) values("updatelastcheck",now(),0)', $tables["config"]));
    # add a testlist
    $info = $GLOBALS['I18N']->get("List for testing.");
    $result = Sql_query("insert into {$tables["list"]} (name,description,entered,active,owner) values(\"test\",\"{$info}\",now(),0,1)");
    $body = '
    Version: ' . VERSION . "\r\n" . ' Url: ' . getConfig("website") . $pageroot . "\r\n";
    printf('<p>' . $GLOBALS['I18N']->get('Success') . ': <a href="mailto:phplist2@tincan.co.uk?subject=Successful installation of phplist&body=%s">' . $GLOBALS['I18N']->get('Tell us about it') . '</a>. </p>', $body);
    printf('<p>
    ' . $GLOBALS['I18N']->get("Please make sure to read the file README.security that can be found in the zip file.") . '</p>');
    printf('<p>
    ' . $GLOBALS['I18N']->get("Please make sure to") . '
    <a href="http://tincan.co.uk/lists/?p=subscribe"> ' . $GLOBALS['I18N']->get("subscribe to the announcements list") . "</a> " . $GLOBALS['I18N']->get("to make sure you are updated when new versions come out. Sometimes security bugs are found which make it important to upgrade. Traffic on the list is very low.") . ' </p>');
    print "<p>" . $GLOBALS['I18N']->get("Continue with") . " " . PageLink2("setup", $GLOBALS['I18N']->get("PHPlist Setup")) . "</p>";
} else {
    print '<ul><li>' . $GLOBALS['I18N']->get("Maybe you want to") . " " . PageLink2("upgrade", $GLOBALS['I18N']->get("Upgrade")) . ' ' . $GLOBALS['I18N']->get("instead?") . '
    <li>' . PageLink2("initialise", $GLOBALS['I18N']->get("Force Initialisation"), "force=yes") . ' ' . $GLOBALS['I18N']->get("(will erase all data!)") . ' ' . "</ul>\n";
}
/*
if ($_GET["firstinstall"] || $_SESSION["firstinstall"]) {
  $_SESSION["firstinstall"] = 1;
  print "<p>".$GLOBALS['I18N']->get("Checklist for Installation")."</p>";
  require "setup.php";
}
*/
コード例 #9
0
ファイル: connect.php プロジェクト: gillima/phplist3
function PageLinkActionButton($name, $desc = '', $url = '', $extraclass = '', $title = '')
{
    ## as PageLink2, but add the option to ajax it in a popover window
    $link = PageLink2($name, $desc, $url);
    if ($link) {
        $link = str_replace('<a ', '<a class="action-button ' . $extraclass . '" ', $link);
        $link .= '';
    }
    return $link;
}
コード例 #10
0
">
<input type="hidden" name="no_note" value="1">
<input type="hidden" name="currency_code" value="GBP">
<input type="hidden" name="tax" value="0">
<input type="hidden" name="bn" value="PP-DonationsBF">
<input type="image" src="images/paypal.gif" border="0" name="submit" alt="Make payments with PayPal - it's fast, free and secure!">
</form></p>
<p>اگر شما یک <b>کاربر همیشگی phplist</b> هستید و فکر میکنید که از پس اغلب مشکلات بر می‌آيید مي‌توانید با <a href="http://forums.phplist.com/" target="_blank">پاسخ گفتن به پرسشهای کاربران دیگر</a>. یا نوشتن برگه هایی در <a href="#docscontrib">سایت مستندات</a> کمک کنید.</p>
<p>اگر شما یک <b>کاربر تازه‌کار phplist</b> هستید و برای نصب یا به کار گرفتن PHPlist روی سایت خود با مشکلی روبرو شدید، میتوانید پیش از اینکه فوراً یک پیام "اینکه کار نمیکنه!" برای ما بفرستید، با تلاش برای پیدا کردن راه حل مناسب در مکانهایی که در بالا گفته شده به ما کمک کنید. اغلب مشکل در تنظیمات محیطی است که میخواهید PHPlist را اجرا کنید. داشتن تنها یک توسعه دهنده برای PHPlist این مشکل را هم دارد که نمیتوان آن را در همه محیط ها و برای همه ویرایش های PHP آزمایش کرد.
</p>
<h1>کارهای دیگری که میتوانید برای یاری رساندن انجام دهید</h1>
<ul>
<li><p>اگر فکر میکنید که PHPlist برای شما مفید بوده است، چرا درباره‌اش به دیگران نگویید؟‌ به احتمال زیاد شما برای پیدا کردنش خیلی تلاش کرده اید و بعد از مقایسه‌اش با سیستمهای دیگر تصمیم به استفاده از آن گرفته‌اید، پس می‌توانید با تجربه‌ای که کسب کرده‌اید به دیگران نیز سود برسانید.</p>

<p>برای اینکار، میتوانید به  PHPlist <?php 
echo PageLink2("رای دهید", "Vote");
?>
 یا در سایتهایی که نرم افزارها را معرفی میکنند برایش بنویسید. همچنین می‌توانید درباره‌اش به افرادی که می‌شناسید بگویید.
</li>
<li><p>می‌توانید PHPlist را <b>به زبان خودتان برگردانید</b> و برگردان را ارايه دهید.
برای یاری رساندن  <a href="http://docs.phplist.com/PhplistTranslation">برگه های برگردان</a> در ویکی بررسی کنید.
</p>
</li>
<li>
<p>می‌توانید همه قابلیتهای مختلف PHPlist را <b>آزمایش کنید</b> و بررسی کنید که آیا به خوبی کار میکنند یا خیر.
لطفا یافته‌های خود را در <a href="http://forums.phplist.com/" target="_blank">انجمن‌ها</a>گزارش کنید.</p></li>
<li>
<p>
شما می‌توانید PHPlist را برای مشتریان خود به کار بگیرید (اگر کارتان مرتبط با وب است) و به آنها نشان دهید که این سیستم چه ابزار خوبی برای رسیدن به اهدافشان است. سپس اگر آنها تغییراتی خواستند می‌توانید در ازای دریافت دستمزد قابلیتهای جدید را ایجاد کنید. برای آگاهی از هزینه افزودن قابلیتهای جدید  
<a href="mailto:phplist2@tincan.co.uk?subject=request for quote to change phplist">تماس بگیرید</a>.
بیشتر قابلیتهای جدید PHPlist بر اساس درخواست مشتریان ایجاد شده اند. این هم به نفع مشتریان است چون با پرداخت مبلغ اندکی به اهدافشان میرسند، هم به نفع جامعه کاربران PHPlist است چرا که قابلیتهای جدید به برنامه افزوده می‌شود و هم به نفع توسعه دهندگان که به خاطر کار کردن بر روی PHPlist کمی دستمزد می‌گیرند :-)</p></li>
コード例 #11
0
ファイル: import.php プロジェクト: TheReaCompany/pooplog
<p>

<h1>Importeer emails in bestaande lijsten</h1>

Er zijn vier manieren  om bestaande informatie te importeren:

<ul>
<li><?php 
echo PageLink2("import2", "Importeer emails met verschillende waarden voor attributen");
?>
. De lijst van emails kan attributen hebben die nog niet zijn vastgelegd. Ze zullen automatisch worden aangemaakt als "textlijn" attributen. Je kunt best deze optie gebruiken als je een spreadsheet/CSV bestand wilt importeren dat de attributen voor de gebruikers in kolommen heeft en een gebruiker per lijn. <br/><br/>
<li><?php 
echo PageLink2("import1", "Importeer emails met dezelfde waarde voor attributen");
?>
. De lijst van emails zal moeten overeenkomen met de structuur die je al hebt opgezet in <?php 
echo NAME;
?>
. Je kan deze optie best gebruiken als je een eenvoudige lijst met emails wilt importeren. Je kan daarnaa de waarden voor de attributen voor elke email ingeven. Ze zullen hetzelfde zijn voor iedereen die je importeerd.<br/><br/>
<li><?php 
echo PageLink2("import3", "Importeer emails van een IMAP account");
?>
. Dit zal naar emails in jou IMAP mappen zoeken en ze toevoegen. Enkel de Naam van de persoon kan als een attribuut worden gevonden.<br/><br/>
<li><?php 
echo PageLink2("import4", "Importeer emails van een andere database");
?>
.
</ul>

</p>
コード例 #12
0
$total = $req[0];
if (isset($_GET['s'])) {
    $s = sprintf('%d', $_GET['s']);
    $e = $s + $numperrun;
} else {
    $s = 0;
    $e = $numperrun;
}
$limit = ' limit ' . $s . ', ' . $numperrun;
if ($total > $numperrun && $e < $total) {
    $next = '<p>' . PageLink2('checkbouncerules&s=' . $e, sprintf($GLOBALS['I18N']->get('Process Next %d'), $numperrun)) . '</p>';
} else {
    $next = '';
}
$unmatched = 0;
$matched = 0;
$req = Sql_Query(sprintf('select * from %s where comment != "not processed" %s', $GLOBALS['tables']['bounce'], $limit));
while ($row = Sql_Fetch_Array($req)) {
    $action = matchBounceRules($row['data'], $bouncerules);
    if ($action) {
        #  print $row['comment']. " Match: $action<br/>";
        $matched++;
    } else {
        $unmatched++;
        print $GLOBALS['I18N']->get('No match') . ': ' . $row['id'] . ' ' . PageLink2("bounce&id=" . $row['id'], $row['comment']) . '<br/>';
    }
    flush();
}
print '<br/>' . $unmatched . ' ' . $GLOBALS['I18N']->get('bounces did not match any current active rule');
print '<br/>' . $matched . ' ' . $GLOBALS['I18N']->get('bounce matched current active rules');
print $next;
コード例 #13
0
ファイル: bounces.php プロジェクト: gillima/phplist3
     $messageid = $GLOBALS['I18N']->get('System Message');
 } else {
     $messageid = $GLOBALS['I18N']->get('Unknown');
 }
 /*  if (preg_match('/Action: delayed\s+Status: 4\.4\.7/im',$bounce["data"])) {
         $ls->addColumn($element,'delayed',$GLOBALS['img_tick']);
       } else {
         $ls->addColumn($element,'delayed',$GLOBALS['img_cross']);
       }
     */
 $ls->addColumn($element, s('Campaign'), $messageid);
 if (preg_match("#([\\d]+) bouncecount increased#", $bounce['comment'], $regs)) {
     $userid = PageLink2('user&id=' . $regs[1], $regs[1]);
     #sprintf('<a href="./?page=user&amp;id=%d">%d</a>',$regs[1],$regs[1]);
 } elseif (preg_match("#([\\d]+) marked unconfirmed#", $bounce['comment'], $regs)) {
     $userid = PageLink2('user&id=' . $regs[1], $regs[1]);
     #sprintf('<a href="./?page=user&amp;id=%d">%d</a>',$regs[1],$regs[1]);
 } else {
     $userid = $GLOBALS['I18N']->get('Unknown');
 }
 $ls->addColumn($element, $GLOBALS['I18N']->get('user'), $userid);
 $ls->addColumn($element, $GLOBALS['I18N']->get('date'), $bounce['date']);
 /*
   printf( "<tr><td>[ <a href=\"javascript:deleteRec('%s');\">%s</a> |
    %s ] </td><td>%s</td><td>%s</td><td>%s</td></tr>\n",
    PageURL2("bounces",$GLOBALS['I18N']->get('delete'),"s=$start&amp;delete=".$bounce["id"]),
    $GLOBALS['I18N']->get('delete'),
    PageLinkButton("bounce",$GLOBALS['I18N']->get('Show'),"s=$start&amp;id=".$bounce["id"]),
    $messageid,
    $userid,
    $bounce["date"]
コード例 #14
0
ファイル: message.php プロジェクト: juvenal/PHPlist
<br /><?php 
echo PageLink2("messages", "Powrót do listy wiadomości");
?>
<br /><a href="#resend">Wyślij tą wiadomość do innej listy</a>
コード例 #15
0
$req = Sql_Query(sprintf('select listid,userid,count(bounce) as numbounces from %s listuser, %s umb where listuser.userid = umb.user and listuser.listid = %d and date_add(time,interval 6 month) > now() group by umb.user order by listuser.listid', $GLOBALS['tables']['listuser'], $GLOBALS['tables']['user_message_bounce'], $listid));
$total = Sql_Affected_Rows();
$limit = '';
$numpp = 150;
$s = empty($_GET['s']) ? 0 : sprintf('%d', $_GET['s']);
if ($total > 500 && $_GET['type'] != 'dl') {
    #  print Paging2('listbounces&id='.$listid,$total,$numpp,'Page');
    $listing = sprintf($GLOBALS['I18N']->get("Listing %s to %s"), $s, $s + $numpp);
    $limit = "limit {$s}," . $numpp;
    print $total . " " . $GLOBALS['I18N']->get(" Total") . "</p>";
    printf('<table border=1><tr><td colspan=4 align=center>%s</td></tr><tr><td>%s</td><td>%s</td><td>
          %s</td><td>%s</td></tr></table><p><hr>', $listing, PageLink2('listbounces&id=' . $listid, "&lt;&lt;", "s=0"), PageLink2('listbounces&id=' . $listid, "&lt;", sprintf('s=%d', max(0, $s - $numpp))), PageLink2('listbounces&id=' . $listid, "&gt;", sprintf('s=%d', min($total, $s + $numpp))), PageLink2('listbounces&id=' . $listid, "&gt;&gt;", sprintf('s=%d', $total - $numpp)));
    $req = Sql_Query(sprintf('select listid,userid,count(bounce) as numbounces from %s listuser, %s umb where listuser.userid = umb.user and listuser.listid = %d  and date_add(time,interval 6 month) > now() group by umb.user order by listuser.listid %s', $GLOBALS['tables']['listuser'], $GLOBALS['tables']['user_message_bounce'], $listid, $limit));
}
print '<p>' . PageLink2('listbounces', 'Select another list');
print '&nbsp;' . PageLink2('listbounces&type=dl&&amp;id=' . $listid, 'Download emails');
print '</p>';
if ($_GET['type'] == 'dl') {
    ob_end_clean();
    Header("Content-type: text/plain");
    $filename = 'Bounces on ' . listName($listid);
    header("Content-disposition:  attachment; filename=\"{$filename}\"");
}
$currentlist = 0;
$ls = new WebblerListing('');
while ($row = Sql_Fetch_Array($req)) {
    if ($currentlist != $row['listid']) {
        if ($_GET['type'] != 'dl') {
            print $ls->display();
        }
        $currentlist = $row['listid'];
コード例 #16
0
ファイル: template.php プロジェクト: narareddy/phplist3
    if (!empty($_POST['template'])) {
        $data['template'] = $content;
    }
} else {
    $data = array();
    $data["title"] = '';
    $data["template"] = '';
}
?>

<p class="information"><?php 
echo $msg;
?>
</p>
<?php 
echo '<p class="button">' . PageLink2("templates", $GLOBALS['I18N']->get('List of Templates')) . '</p>';
?>

<?php 
echo formStart(' enctype="multipart/form-data" class="template2" ');
?>
<input type="hidden" name="id" value="<?php 
echo $id;
?>
" />
<div class="panel">
<table class="templateForm">
<tr>

  <td><?php 
echo $GLOBALS['I18N']->get('Title of this template');
コード例 #17
0
ファイル: editattributes.php プロジェクト: radicaldesigns/amp
function deleteItem($table, $attributeid, $delete)
{
    global $tables, $replace;
    # delete the index in delete
    $valreq = Sql_Fetch_Row_query("select name from {$table} where id = {$delete}");
    $val = $valreq[0];
    # check dependencies
    $dependencies = array();
    $result = Sql_query("select distinct userid from {$tables['user_attribute']} where\n  attributeid = {$attributeid} and value = {$delete}");
    while ($row = Sql_fetch_array($result)) {
        array_push($dependencies, $row["userid"]);
    }
    if (sizeof($dependencies) == 0) {
        $result = Sql_query("delete from {$table} where id = {$delete}");
    } else {
        if ($replace) {
            $result = Sql_Query("update {$tables['user_attribute']} set value = {$replace} where value = {$delete}");
            $result = Sql_query("delete from {$table} where id = {$delete}");
        } else {
            ?>
    Cannot delete <b><?php 
            echo $val;
            ?>
</b><br />
    The Following record(s) are dependent on this value<br />
    Update the record(s) to not use this attribute value and try again<p>
    <?php 
            for ($i = 0; $i < sizeof($dependencies); $i++) {
                print PageLink2("user", "User " . $dependencies[$i], "id={$dependencies[$i]}") . "<br />\n";
                if ($i > 10) {
                    print "* Too many to list, total dependencies:\n " . sizeof($dependencies) . "<br /><br />";
                    giveAlternative($table, $delete, $attributeid);
                    return 0;
                }
            }
            print "</p><br />";
            giveAlternative($table, $delete, $attributeid);
        }
    }
    return 1;
}
コード例 #18
0
ファイル: import.php プロジェクト: radicaldesigns/amp
<p>

<h1>Importer des adresses email dans des listes pr&eacute;-existantes</h1>

Il y a quatre m&eacute;thodes pour importer des donn&eacute;es pr&eacute;-existantes:

<ul>
<li><?php 
echo PageLink2("import2", "Importer des adresses email avec des attributs diff&eacute;rents de votre syst&egrave;me");
?>
. La liste d&rsquo;emails peut contenir des attributs qui ne sont pas encore d&eacute;finis.  Ils seront cr&eacute;&eacute;s automatiquement comme des attributs "textline", c&rsquo;est-&agrave;-dire un champ texte. Utilisez cette option si vous importez d&rsquo;un fichier CSV ou d&rsquo;un tableur, en veillant &agrave; mettre les attributs dans les colonnes, un utilisateur par ligne, et l&rsquo;email des utilisateurs dans la premi&egrave;re colonne (ce qui correspond au premier attribut). <br/><br/>
<li><?php 
echo PageLink2("import1", "Importer des adresses email avec les m&ecirc;mes valeurs et attributs que votre syst&egrave;me");
?>
. La liste d&rsquo;emails devra correspondre &agrave; la structure que vous avez d&eacute;j&agrave; cr&eacute;&eacute; dans <?php 
echo NAME;
?>
. Utilisez cette option si vous importez une simple liste d&rsquo;emails. Vous pouvez ensuite sp&eacute;cifier les valeurs des attributs dans chaque dossier. Les valeurs par d&eacute;faut seront les m&ecirc;mes pour tous les emails que vous importerez.<br/><br/>
<li><?php 
echo PageLink2("import3", "Importer des adresses emails d&rsquo;un compte IMAP");
?>
. Cette option va chercher des emails dans vos dossier IMAP et les ajouter &agrave; votre liste.  Seul le Nom de la personne pourra &ecirc;tre r&eacute;cup&eacute;r&eacute; comme attribut.<br/><br/>
<li><?php 
echo PageLink2("import4", "Importer des adresses email d&rsquo;une autre base de donn&eacute;es");
?>
.
</ul>

</p>
コード例 #19
0
ファイル: send_core.php プロジェクト: kvervo/phplist-aiesec
 $delete_base = sprintf('%s&amp;id=%d&amp;tab=%s', $_GET["page"], $_GET["id"], $_GET["tab"]);
 $tc = 0;
 # table counter
 if (!isset($messagedata['criteria_overall_operator'])) {
     $messagedata['criteria_overall_operator'] = '';
 }
 $mainoperator = $messagedata['criteria_overall_operator'] == "all" ? ' and ' : ' or ';
 $subqueries = array();
 for ($i = 1; $i <= $num; $i++) {
     $crit_data = parseDelimitedData($messagedata[sprintf('criterion%d', $i)]);
     if ($crit_data["attribute"]) {
         array_push($used_attributes, $crit_data["attribute"]);
         $ls->addElement('<!--' . $crit_data["attribute"] . '-->' . $crit_data["attribute_name"]);
         $ls->addColumn('<!--' . $crit_data["attribute"] . '-->' . $crit_data["attribute_name"], $GLOBALS['I18N']->get('operator'), $GLOBALS['I18N']->get($crit_data["operator"]));
         $ls->addColumn('<!--' . $crit_data["attribute"] . '-->' . $crit_data["attribute_name"], $GLOBALS['I18N']->get('values'), $crit_data["values"]);
         $ls->addColumn('<!--' . $crit_data["attribute"] . '-->' . $crit_data["attribute_name"], $GLOBALS['I18N']->get('remove'), PageLink2($delete_base . "&amp;deleterule=" . $i, $GLOBALS['I18N']->get("remove")));
         if (isset($_POST["criteria"][$i])) {
             $attribute = $_POST["criteria"][$i];
         } else {
             $attribute = '';
         }
         ## fix 6063
         $crit_data["values"] = str_replace(" ", "", $crit_data["values"]);
         # hmm, rather get is some other way, this is a bit unnecessary
         $type = Sql_Fetch_Row_Query("select type from {$tables["attribute"]} where id = " . $crit_data["attribute"]);
         $operator = $where_clause = $select_clause = "";
         switch ($type[0]) {
             case "checkboxgroup":
                 $or_clause = '';
                 if ($tc) {
                     $where_clause .= " {$mainoperator} ";
コード例 #20
0
ファイル: stresstest.php プロジェクト: gillima/phplist3
        $result = Sql_query($query, 0);
        $userid = Sql_insert_id();
        if ($userid) {
            $result = Sql_query("replace into {$tables['listuser']} (userid,listid,entered) values({$userid},{$listid},now())");
            reset($data);
            while (list($key, $val) = each($data)) {
                if ($key && $val) {
                    Sql_query("replace into {$tables['user_attribute']} (attributeid,userid,value) values(" . $key . ",{$userid}," . $val . ')');
                }
            }
        }
    }
    return 1;
}
print formStart(' class="testOutput" ') . '<input type="text" name="output" size=45></form>';
print '<p class="button">' . PageLink2('stresstest', 'Erase Test information', 'eraseall=yes') . ' (may take a while)';
ob_end_flush();
flush();
$testlists = array();
$res = Sql_Query("select id from {$tables['list']} where name like \"%test%\"");
while ($row = Sql_Fetch_Row($res)) {
    array_push($testlists, $row[0]);
}
if (!ini_get('safe_mode')) {
    if (!count($testlists)) {
        print '<script language="Javascript" type="text/javascript"> document.forms[0].output.value="Error: cannot find any test lists to use";</script>' . "\n";
    } elseif (!isset($eraseall)) {
        print '<script language="Javascript" type="text/javascript"> document.forms[0].output.value="Filling ";</script>' . "\n";
        for ($i = 0; $i <= 100; ++$i) {
            set_time_limit(60);
            flush();
コード例 #21
0
ファイル: setup.php プロジェクト: MarcelvC/phplist3
    $alldone = 0;
    $html .= $GLOBALS['img_cross'];
}
$html .= '</td></tr>';
$html .= '<tr><td>' . s('Create a subscribe page') . '</td>
<td>' . PageLink2('spage', s('Go there')) . '</td><td>';
$req = Sql_Query("select * from {$tables['subscribepage']}");
if (Sql_Affected_Rows()) {
    $html .= $GLOBALS['img_tick'];
} else {
    $alldone = 0;
    $html .= $GLOBALS['img_cross'];
}
$html .= '</td></tr>';
$html .= '<tr><td>' . s('Add some subscribers') . '</td>
<td>' . PageLink2('import', s('Go there')) . '</td><td>';
$req = Sql_Fetch_Row_Query("select count(*) from {$tables['user']}");
if ($req[0] > 2) {
    $html .= $GLOBALS['img_tick'];
} else {
    $alldone = 0;
    $html .= $GLOBALS['img_cross'];
}
$html .= '</td></tr>';
$html .= '</table>';
if ($alldone) {
    $html .= Info($GLOBALS['I18N']->get('Congratulations, phpList is set up, you are ready to start mailing'), 1) . '<br/>' . PageLinkActionButton('send', s('Start a message campaign'));
    unset($_SESSION['firstinstall']);
}
$panel = new UIPanel($GLOBALS['I18N']->get('configuration steps'), $html);
print $panel->display();
コード例 #22
0
ファイル: index.php プロジェクト: bcantwell/website
         if (isset($GLOBALS['developer_email'])) {
             include $include;
         } else {
             @(include $include);
         }
     }
     #  print "End of inclusion<br/>";
 } elseif (!empty($_GET['pi']) && isset($GLOBALS['plugins']) && is_array($GLOBALS['plugins']) && isset($GLOBALS['plugins'][$_GET['pi']]) && is_object($GLOBALS['plugins'][$_GET['pi']])) {
     $plugin = $GLOBALS["plugins"][$_GET["pi"]];
     $menu = $plugin->adminmenu();
     if (is_file($plugin->coderoot . $include)) {
         include $plugin->coderoot . $include;
     } elseif ($include == 'main.php' || $_GET['page'] == 'home') {
         print '<h3>' . $plugin->name . '</h3><ul>';
         foreach ($menu as $page => $desc) {
             print '<li>' . PageLink2($page, $desc) . '</li>';
         }
         print '</ul>';
     } elseif ($page != 'login') {
         print '<br/>' . "{$page} -&gt; " . s('Sorry this page was not found in the plugin') . '<br/>';
         #.' '.$plugin->coderoot.$include.'<br/>';
         cl_output("{$page} -> " . s('Sorry this page was not found in the plugin'));
         #. ' '.$plugin->coderoot . "$include");
     }
 } else {
     if ($GLOBALS["commandline"]) {
         clineError(s('Sorry, that module does not exist'));
         exit;
     }
     if (is_file('ui/' . $GLOBALS['ui'] . '/pages/' . $include)) {
         include 'ui/' . $GLOBALS['ui'] . '/pages/' . $include;
コード例 #23
0
ファイル: viewtemplate.php プロジェクト: bramley/phplist3
<?php

# view template
require_once dirname(__FILE__) . '/accesscheck.php';
if (!empty($_GET['pi']) && defined('IN_WEBBLER')) {
    $more = '&amp;pi=' . $_GET['pi'];
} else {
    $more = '';
}
$id = '';
if (isset($_GET['id'])) {
    $id = sprintf('%d', $_GET['id']);
}
if (empty($_GET['embed'])) {
    print '<iframe src="?page=viewtemplate&embed=yes&omitall=yes&id=' . $id . $more . '"
    scrolling="auto" width=100% height=450 margin=0 frameborder=0>
  </iframe>';
    print '<p class="button">' . PageLink2('template&amp;id=' . $id, $GLOBALS['I18N']->get('Back to edit template')) . '</p>';
} else {
    ob_end_clean();
    //BUGFIX 15292 - by tipichris - mantis.phplist.com/view.php?id=15292
    // print previewTemplate($id,$_SESSION["logindetails"]["id"],nl2br($GLOBALS['I18N']->get('Sample Newsletter text')));
    print previewTemplate($id, $_SESSION['logindetails']['id'], '<h4 style="color:#369;">' . $GLOBALS['I18N']->get('Sample Newsletter Content') . '</h4>' . '<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum a quam nec neque interdum venenatis. Duis sed lacus vel elit vehicula facilisis. Phasellus nec quam a justo dapibus iaculis fermentum vitae velit. Donec quis lorem sapien.</p><hr size=1 style="color:#69C" /><br /><p><b style="color:#369"> Donec iaculis ultrices volutpat? </b></p><p><img src="images/sampleimage.jpg" style="float:right;margin-left:10px;border:1px solid #999" />Etiam sodales tortor a sapien sagittis id blandit tortor lacinia. <a href="#" style="color:#369;text-decoration:underline">Integer in elit magna</a>. Phasellus vestibulum nulla ante. Etiam augue magna, venenatis ut ornare eget, tempor pulvinar urna. Maecenas molestie elementum leo vel vehicula. In sed porttitor ligula. Quisque vulputate tortor at tellus gravida in molestie ipsum cursus. Fusce posuere mauris at mauris feugiat quis volutpat velit vestibulum.</p>');
    //END BUGFIX
}
コード例 #24
0
ファイル: import3.php プロジェクト: dehvCurtis/phplist
        }
        // end foreach
        $num_lists = sizeof($lists);
        # be grammatically correct :-)
        $displists = $num_lists == 1 ? $GLOBALS['I18N']->get('list') : $GLOBALS['I18N']->get('lists');
        $dispemail = $count_email_add == 1 ? $GLOBALS['I18N']->get('new email was') . " " : $GLOBALS['I18N']->get('new emails were') . " ";
        $dispemail2 = $additional_emails == 1 ? $GLOBALS['I18N']->get('email was') . " " : $GLOBALS['I18N']->get('emails were') . " ";
        if (!$some && !$additional_emails) {
            print "<br/>" . $GLOBALS['I18N']->get("All the emails already exist in the database and are members of the") . " {$displists}.";
        } else {
            print "{$count_email_add} {$dispemail} " . $GLOBALS['I18N']->get("succesfully imported to the database and added to") . " {$num_lists} {$displists}.<br/>{$additional_emails} {$dispemail2} " . $GLOBALS['I18N']->get("subscribed to the") . " {$displists}";
            if ($count_exist) {
                print "<br/>{$count_exist} " . $GLOBALS['I18N']->get("emails already existed in the database");
            }
            if ($invalid_email_count) {
                print "<br/>{$invalid_email_count} " . $GLOBALS['I18N']->get("Invalid Emails found.");
                if (!$omit_invalid) {
                    print " " . $GLOBALS['I18N']->get("These records were added, but the email has been made up. You can find them by doing a search on") . " \"Invalid Email\"";
                } else {
                    print " " . $GLOBALS['I18N']->get("These records were deleted. Check your source and reimport the data. Duplicates will be identified.");
                }
            }
        }
    } else {
        print $GLOBALS['I18N']->get("No emails found");
    }
    print '<p class="button">' . PageLink2("import", $GLOBALS['I18N']->get('Import some more emails'));
}
?>

コード例 #25
0
ファイル: admins.php プロジェクト: gillima/phplist3
            <?php 
echo $GLOBALS['I18N']->get('Find an admin');
?>
: <input type=text name="find"
                                                                         value="<?php 
echo htmlspecialchars($find);
?>
"
                                                                         size="40"><input type="submit"
                                                                                          value="<?php 
echo $GLOBALS['I18N']->get('Go');
?>
">
            </form></td>
    </tr>
</table>
<?php 
$ls = new WebblerListing($GLOBALS['I18N']->get('Administrators'));
$ls->usePanel($paging);
while ($admin = Sql_fetch_array($result)) {
    $delete_url = sprintf("<a href=\"javascript:deleteRec('%s');\">" . $GLOBALS['I18N']->get('del') . '</a>', PageURL2('admins', 'Delete', "start={$start}&amp;delete=" . $admin['id']));
    $ls->addElement($admin['loginname'], PageUrl2('admin', $GLOBALS['I18N']->get('Show'), "start={$start}&amp;id=" . $admin['id'] . $remember_find));
    if (!$external && $admin['id'] != $_SESSION['logindetails']['id']) {
        $ls->addColumn($admin['loginname'], $GLOBALS['I18N']->get('Del'), $delete_url);
    }
}
print $ls->display();
print '<br/><hr/>';
print PageLinkButton('admin', $GLOBALS['I18N']->get('Add a new administrator'), "start={$start}" . $remember_find);
print '<p class="button">' . PageLink2('importadmin', $GLOBALS['I18N']->get('Import list of admins')) . '</p>';
コード例 #26
0
ファイル: bouncemgt.php プロジェクト: MarcelvC/phplist3
<?php

require_once dirname(__FILE__) . '/accesscheck.php';
$spb = '<div>';
$spe = '</div>';
print $spb . PageLink2('bouncerules', $GLOBALS['I18N']->get('List Bounce Rules')) . $spe;
print $spb . PageLink2('bounces', $GLOBALS['I18N']->get('View Bounces')) . $spe;
print $spb . PageLink2('listbounces', $GLOBALS['I18N']->get('View Bounces per list')) . $spe;
print $spb . PageLink2('checkbouncerules', $GLOBALS['I18N']->get('Check Current Bounce Rules')) . $spe;
print $spb . PageLink2('processbounces', $GLOBALS['I18N']->get('Process Bounces')) . $spe;
$numrules = Sql_Fetch_Row_Query(sprintf('select count(*) from %s', $GLOBALS['tables']['bounceregex']));
if (!$numrules[0]) {
    print '<p class="information">' . $GLOBALS['I18N']->get('You currently have no rules defined.      You can click "Generate Bounce Rules" in order to auto-generate rules from your existing bounces.      This will results in a lot of rules which you will need to review and activate.      It will however, not catch every single bounce, so it will be necessary to add new rules over      time when new bounces come in.') . '</p>';
} else {
    print '<p class="information">' . $GLOBALS['I18N']->get('You have already defined bounce rules in your system.      Be careful with generating new ones, because these may interfere with the ones that exist.') . '</p>';
}
print '<p class="button">' . PageLink2('generatebouncerules', $GLOBALS['I18N']->get('Generate Bounce Rules')) . '</p>';
コード例 #27
0
    $req = Sql_Query(sprintf('select user.email,user.id as userid,firstclick,date_format(latestclick,
    "%%e %%b %%Y %%H:%%i") as latestclick,sum(clicked) as numclicks,messageid,linkid,url from %s as linktrack, %s as user where linktrack.userid = user.id 
    and linktrack.userid = %d and linktrack.clicked group by linktrack.url', $GLOBALS['tables']['linktrack'], $GLOBALS['tables']['user'], $userid));
}
#ob_end_flush();
#flush();
$summary = array();
while ($row = Sql_Fetch_Array($req)) {
    #  print $row['email'] . "<br/>";
    if (!$userid) {
        $element = $row['email'];
        $ls->addElement($element, PageUrl2('userhistory&id=' . $row['userid']));
    } else {
        $element = $row['url'];
        $ls->addElement($element, PageUrl2('uclicks&id=' . $row['linkid']));
        $ls->addColumn($element, $GLOBALS['I18N']->get('message'), PageLink2('mclicks&id=' . $row['messageid'], $row['messageid']));
    }
    #  $element = sprintf('<a href="%s" target="_blank" class="url" title="%s">%s</a>',$row['url'],$row['url'],substr(str_replace('http://','',$row['url']),0,50));
    #  $total = Sql_Verbose_Query(sprintf('select count(*) as total from %s where messageid = %d and url = "%s"',
    #    $GLOBALS['tables']['linktrack'],$id,$row['url']));
    #  $totalsent = Sql_Fetch_Array_Query(sprintf('select count(*) as total from %s where url = "%s"',
    #    $GLOBALS['tables']['linktrack'],$urldata['url']));
    $ls->addColumn($element, $GLOBALS['I18N']->get('firstclick'), formatDateTime($row['firstclick'], 1));
    $ls->addColumn($element, $GLOBALS['I18N']->get('latestclick'), $row['latestclick']);
    $ls->addColumn($element, $GLOBALS['I18N']->get('clicks'), $row['numclicks']);
    #  $ls->addColumn($element,$GLOBALS['I18N']->get('sent'),$total['total']);
    #  $perc = sprintf('%0.2f',($row['numclicks'] / $totalsent['total'] * 100));
    #  $ls->addColumn($element,$GLOBALS['I18N']->get('clickrate'),$perc.'%');
    $summary['totalclicks'] += $row['numclicks'];
}
$ls->addElement('total');
コード例 #28
0
ファイル: community.php プロジェクト: radicaldesigns/amp
primeramente encontrar la soluci&oacute;n a sus problemas en los
lugares mencionados m&aacute;s arriba, antes de colgar un mensaje tipo
&#171;esto no funciona&#187;. Los problemas a menudo est&aacute;n
relacionados con el entorno en el que est&aacute; funcionando su
instalaci&oacute;n de PHPlist. El tener un &uacute;nico programador en
PHPlist tiene la desventaja de que no se puede probar el sistema en
todas las plataformas ni con todas las versiones de PHP.</p>
<h1>Otras cosas que puede hacer para ayudar</h1>
<ul>
<li><p>Si PHPlist le resulta &uacute;til, podr&iacute;a ayudar a
difundirlo. Probablemente realiz&oacute; un cierto esfuerzo para
encontrarlo y tomar la decisi&oacute;n de utilizarlo despu&eacute;s de
haberlo comparado con otros programas similares. Podr&iacute;a ayudar a otras personas a beneficiarse de su experiencia.</p>

<p>Para ello <?php 
echo PageLink2("vote", "Vote");
?>
 por PHPlist, o
escriba rese&ntilde;as en los sitios que enumeran este tipo de
programas. Tambi&eacute;n puede informar sobre el programa
directamente a otras personas.
</li>
<li><p>Puede <b>Traducir</b> PHPlist a su idioma y compartir la
traducci&oacute;n. Esperamos mejorar la internacionalizaci&oacute;n,
pero de momento solo tiene que traducir el fichero <i>english.inc</i>.</p>
</li>
<li>
<p>Puede <b>Probar</b> todas las funciones de PHPlist y comprobar si
le sirven para sus necesidades. Por favor informe sobre los resultados
de sus pruebas en los <a href="http://www.phplist.com/forums/" target="_blank">Foros</a>.</p></li>
<li>
コード例 #29
0
ファイル: viewtemplate.php プロジェクト: radicaldesigns/amp
<?
# view template
require_once "accesscheck.php";

if (!$_GET["embed"]) {
	print '<iframe src="?page=viewtemplate&embed=yes&omitall=yes&id='.$_GET["id"].'"
  	scrolling="auto" width=100% height=450 margin=0 frameborder=0>
  </iframe>';
  print '<p>'.PageLink2("template&id=".$_GET["id"],"Back to edit template").'</p>';
} else {
	ob_end_clean();
	print previewTemplate($id,$_SESSION["logindetails"]["id"],nl2br('

I understand, said Socrates, and quite accept your account.  But tell me,
Zeno, do you not further think that there is an idea of likeness in itself,
and another idea of unlikeness, which is the opposite of likeness, and that
in these two, you and I and all other things to which we apply the term
many, participate--things which participate in likeness become in that
degree and manner like; and so far as they participate in unlikeness become
in that degree unlike, or both like and unlike in the degree in which they
participate in both?  And may not all things partake of both opposites, and
be both like and unlike, by reason of this participation?--Where is the
wonder?  Now if a person could prove the absolute like to become unlike, or
the absolute unlike to become like, that, in my opinion, would indeed be a
wonder; but there is nothing extraordinary, Zeno, in showing that the
things which only partake of likeness and unlikeness experience both.  Nor,
again, if a person were to show that all is one by partaking of one, and at
the same time many by partaking of many, would that be very astonishing.
But if he were to show me that the absolute one was many, or the absolute
many one, I should be truly amazed.  And so of all the rest:  I should be
surprised to hear that the natures or ideas themselves had these opposite
コード例 #30
0
ファイル: defaults.php プロジェクト: radicaldesigns/amp
    Sql_Query($query);
    $fp = fopen("data/$val","r");
    $header = "";
    while (!feof ($fp)) {
      $buffer = fgets($fp, 4096);
      if (!ereg("#",$buffer)) {
        if (!$header)
          $header = $buffer;
        else if (trim($buffer) != "")
          Sql_Query(sprintf('insert into %slistattr_%s (name) values("%s")',$table_prefix,$lc_name,trim($buffer)));
      }
    }
    fclose ($fp);
  }
  print "Done<br/><br/>";
  print '<p>'.PageLink2("attributes","Continue").'</p>';

} else {

?>


<?php 
echo formStart();
?>
<?
reset($attributes);
while (list($key,$attribute) = each ($attributes)) {
  list($name,$desc) = explode(":",$key);
  printf('<input type=checkbox name="selected[]" value="%s">%s<br>', $attribute,$desc);
}