summaryrefslogtreecommitdiff
path: root/scripts
diff options
context:
space:
mode:
Diffstat (limited to 'scripts')
-rw-r--r--scripts/createsim.php3
-rwxr-xr-xscripts/init_conversation.php49
-rwxr-xr-xscripts/queuedaemon.php3
-rwxr-xr-xscripts/setup_status_network.sh2
-rwxr-xr-xscripts/update_po_templates.php15
-rw-r--r--scripts/updateavatarurl.php4
-rw-r--r--scripts/updateavatarurl_group.php99
7 files changed, 169 insertions, 6 deletions
diff --git a/scripts/createsim.php b/scripts/createsim.php
index 882d74456..e0b5fc906 100644
--- a/scripts/createsim.php
+++ b/scripts/createsim.php
@@ -119,6 +119,9 @@ function newSub($i)
function main($usercount, $noticeavg, $subsavg, $tagmax)
{
+ global $config;
+ $config['site']['dupelimit'] = -1;
+
$n = 1;
newUser(0);
diff --git a/scripts/init_conversation.php b/scripts/init_conversation.php
new file mode 100755
index 000000000..675e7cabd
--- /dev/null
+++ b/scripts/init_conversation.php
@@ -0,0 +1,49 @@
+#!/usr/bin/env php
+<?php
+/*
+ * StatusNet - the distributed open-source microblogging tool
+ * Copyright (C) 2008, 2009, StatusNet, Inc.
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+define('INSTALLDIR', realpath(dirname(__FILE__) . '/..'));
+
+require_once INSTALLDIR.'/scripts/commandline.inc';
+
+common_log(LOG_INFO, 'Initializing conversation table...');
+
+$notice = new Notice();
+$notice->query('select distinct conversation from notice');
+
+while ($notice->fetch()) {
+ $id = $notice->conversation;
+
+ if ($id) {
+ $uri = common_local_url('conversation', array('id' => $id));
+
+ // @fixme db_dataobject won't save our value for an autoincrement
+ // so we're bypassing the insert wrappers
+ $conv = new Conversation();
+ $sql = "insert into conversation (id,uri,created) values(%d,'%s','%s')";
+ $sql = sprintf($sql,
+ $id,
+ $conv->escape($uri),
+ $conv->escape(common_sql_now()));
+ echo "$id ";
+ $conv->query($sql);
+ print "... ";
+ }
+}
+print "done.\n";
diff --git a/scripts/queuedaemon.php b/scripts/queuedaemon.php
index d372d898f..6dba16f95 100755
--- a/scripts/queuedaemon.php
+++ b/scripts/queuedaemon.php
@@ -126,8 +126,7 @@ class QueueDaemon extends SpawningDaemon
class QueueMaster extends IoMaster
{
/**
- * Initialize IoManagers for the currently configured site
- * which are appropriate to this instance.
+ * Initialize IoManagers which are appropriate to this instance.
*/
function initManagers()
{
diff --git a/scripts/setup_status_network.sh b/scripts/setup_status_network.sh
index 89d15415f..4ebb696c7 100755
--- a/scripts/setup_status_network.sh
+++ b/scripts/setup_status_network.sh
@@ -54,6 +54,8 @@ for top in $AVATARBASE $FILEBASE $BACKGROUNDBASE; do
chmod a+w $top/$nickname
done
+php $PHPBASE/scripts/checkschema.php -s"$server"
+
php $PHPBASE/scripts/registeruser.php \
-s"$server" \
-n"$nickname" \
diff --git a/scripts/update_po_templates.php b/scripts/update_po_templates.php
index f882f673a..0bfa62a22 100755
--- a/scripts/update_po_templates.php
+++ b/scripts/update_po_templates.php
@@ -36,7 +36,11 @@ xgettext \
--default-domain=$domain \
--output=locale/$domain.po \
--language=PHP \
- --keyword="_m:1" \
+ --add-comments=TRANS \
+ --keyword="_m:1,1t" \
+ --keyword="_m:1c,2,2t" \
+ --keyword="_m:1,2,3t" \
+ --keyword="_m:1c,2,3,4t" \
--keyword="pgettext:1c,2" \
--keyword="npgettext:1c,2,3" \
actions/*.php \
@@ -62,8 +66,12 @@ xgettext \
--default-domain=$domain \
--output=locale/$domain.po \
--language=PHP \
+ --add-comments=TRANS \
--keyword='' \
- --keyword="_m:1" \
+ --keyword="_m:1,1t" \
+ --keyword="_m:1c,2,2t" \
+ --keyword="_m:1,2,3t" \
+ --keyword="_m:1c,2,3,4t" \
END;
foreach ($files as $file) {
@@ -186,6 +194,9 @@ foreach ($args as $arg) {
$allplugins = true;
} elseif (substr($arg, 0, 9) == "--plugin=") {
$plugins[] = substr($arg, 9);
+ } elseif ($arg == '--help') {
+ echo "options: --all --core --plugins --plugin=Foo\n\n";
+ exit(0);
}
}
diff --git a/scripts/updateavatarurl.php b/scripts/updateavatarurl.php
index 617c2e24c..3b6681bae 100644
--- a/scripts/updateavatarurl.php
+++ b/scripts/updateavatarurl.php
@@ -94,11 +94,11 @@ function updateAvatars($user)
}
}
- $orig = clone($avatar);
+ $orig_url = $avatar->url;
$avatar->url = Avatar::url($avatar->filename);
- if ($avatar->url != $orig->url) {
+ if ($avatar->url != $orig_url) {
$sql =
"UPDATE avatar SET url = '" . $avatar->url . "' ".
"WHERE profile_id = " . $avatar->profile_id . " ".
diff --git a/scripts/updateavatarurl_group.php b/scripts/updateavatarurl_group.php
new file mode 100644
index 000000000..ada42de20
--- /dev/null
+++ b/scripts/updateavatarurl_group.php
@@ -0,0 +1,99 @@
+#!/usr/bin/env php
+<?php
+/*
+ * StatusNet - a distributed open-source microblogging tool
+ * Copyright (C) 2008, 2009, StatusNet, Inc.
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+define('INSTALLDIR', realpath(dirname(__FILE__) . '/..'));
+
+$shortoptions = 'i:n:a';
+$longoptions = array('id=', 'nickname=', 'all');
+
+$helptext = <<<END_OF_UPDATEAVATARURL_HELP
+updateavatarurl_group.php [options]
+update the URLs of all group avatars in the system
+
+ -i --id ID of group to update
+ -n --nickname nickname of the group to update
+ -a --all update all
+
+END_OF_UPDATEAVATARURL_HELP;
+
+require_once INSTALLDIR.'/scripts/commandline.inc';
+
+try {
+ $user = null;
+
+ if (have_option('i', 'id')) {
+ $id = get_option_value('i', 'id');
+ $group = User_group::staticGet('id', $id);
+ if (empty($group)) {
+ throw new Exception("Can't find group with id '$id'.");
+ }
+ updateGroupAvatars($group);
+ } else if (have_option('n', 'nickname')) {
+ $nickname = get_option_value('n', 'nickname');
+ $group = User_group::staticGet('nickname', $nickname);
+ if (empty($group)) {
+ throw new Exception("Can't find group with nickname '$nickname'");
+ }
+ updateGroupAvatars($group);
+ } else if (have_option('a', 'all')) {
+ $group = new User_group();
+ if ($group->find()) {
+ while ($group->fetch()) {
+ updateGroupAvatars($group);
+ }
+ }
+ } else {
+ show_help();
+ exit(1);
+ }
+} catch (Exception $e) {
+ print $e->getMessage()."\n";
+ exit(1);
+}
+
+function updateGroupAvatars($group)
+{
+ if (!have_option('q', 'quiet')) {
+ print "Updating avatars for group '".$group->nickname."' (".$group->id.")...";
+ }
+
+ if (empty($group->original_logo)) {
+ print "(none found)...";
+ } else {
+ // Using clone here was screwing up the group->find() iteration
+ $orig = User_group::staticGet('id', $group->id);
+
+ $group->original_logo = Avatar::url(basename($group->original_logo));
+ $group->homepage_logo = Avatar::url(basename($group->homepage_logo));
+ $group->stream_logo = Avatar::url(basename($group->stream_logo));
+ $group->mini_logo = Avatar::url(basename($group->mini_logo));
+
+ if (!$group->update($orig)) {
+ throw new Exception("Can't update avatars for group " . $group->nickname . ".");
+ }
+ }
+
+ if (have_option('v', 'verbose')) {
+ print "DONE.";
+ }
+ if (!have_option('q', 'quiet') || have_option('v', 'verbose')) {
+ print "\n";
+ }
+}