init
This commit is contained in:
113
obsolete/htdocs/admin/redirectusers.bml
Executable file
113
obsolete/htdocs/admin/redirectusers.bml
Executable file
@@ -0,0 +1,113 @@
|
||||
<html>
|
||||
<head><title>Redirect users</title></head>
|
||||
<body>
|
||||
<?_code
|
||||
{
|
||||
use strict;
|
||||
use vars qw($title $body %GET %POST);
|
||||
use LJ::Rewriteuser;
|
||||
|
||||
$title = "Redirect users";
|
||||
$body = "";
|
||||
|
||||
# login check
|
||||
my $remote = LJ::get_remote();
|
||||
|
||||
return LJ::bad_input("You must be logged in to modify your journal")
|
||||
unless $remote;
|
||||
|
||||
# priv check
|
||||
return LJ::bad_input("You do not have the necessary privilege to be here.")
|
||||
unless LJ::check_priv($remote, 'admin');
|
||||
|
||||
# Subroutine that provides the HTML form
|
||||
|
||||
my $update_form = sub {
|
||||
my $ret;
|
||||
|
||||
$ret .= "<form action='redirectusers.bml' method='post'>\n";
|
||||
$ret .= LJ::html_hidden(mode => 'submit',
|
||||
ssl => $GET{'ssl'});
|
||||
|
||||
$ret .= "<?h1 Redirect users h1?>\n";
|
||||
$ret .= "<?p To redirect a user or a community, fill out the form below p?>\n";
|
||||
|
||||
$ret .= "<?standout\n";
|
||||
$ret .= "Redirect from:<br />\n";
|
||||
$ret .= "<input name='from' size='30' maxlength='15'/><br />\n";
|
||||
$ret .= "Redirect to:<br />\n";
|
||||
$ret .= "<input name='to' size='30' maxlength='15' /><br />\n";
|
||||
$ret .= "Affect entries with numbers strictly less than:<br />\n";
|
||||
$ret .= "<input name='maxid' size='30' maxlength='15' /><br />\n";
|
||||
$ret .= "standout?>\n";
|
||||
|
||||
$ret .= "<?h1 Proceed h1?>\n";
|
||||
$ret .= "<?p Press the button to turn on redirect. Should work for communities, too. To remove redirect, leave the "Redirect to:" field empty. p?>\n";
|
||||
|
||||
$ret .= "<?standout\n";
|
||||
$ret .= "<input type='submit' value='Proceed' />\n";
|
||||
$ret .= "standout?>\n";
|
||||
$ret .= "</form>\n";
|
||||
return $ret;
|
||||
};
|
||||
|
||||
# If POST didn't accur, give out the HTML form. If it did occur,
|
||||
# process data
|
||||
|
||||
unless (LJ::did_post()) {
|
||||
$body .= $update_form->();
|
||||
|
||||
# Redirect from 'from' to 'to' with maxid 'maxid'
|
||||
|
||||
} elsif ($POST{'mode'} eq 'submit') {
|
||||
|
||||
# Get $from, $to, $maxid, canonicalize $from and $to.
|
||||
|
||||
my $from = LJ::canonical_username($POST{'from'});
|
||||
my $to = LJ::canonical_username($POST{'to'});
|
||||
my $maxid = $POST{'maxid'};
|
||||
|
||||
# If $to not emptry, we're adding a redirect
|
||||
|
||||
if ($to ne "") {
|
||||
|
||||
# Check whether maxidx is an integer
|
||||
|
||||
if($maxid =~ /\d+/){
|
||||
$maxid=$maxid+0;
|
||||
|
||||
# Check whether we already have a redirect from $from
|
||||
|
||||
if (!(LJ::Rewriteuser::get_rewrite($from))){
|
||||
|
||||
# We don't have a redirect -- okay, we add it
|
||||
|
||||
LJ::Rewriteuser::insert_rewrite_hash($from,$to,$maxid);
|
||||
$body = "Success: $from is now redirected to $to with maxid $maxid.<br>Please restart httpd before setting any oy other redirects.";
|
||||
|
||||
# We do have redirect already -- do nothing, return error
|
||||
|
||||
} else {$body = "Error: there already is a redirect for this user. Namely, to: ".(LJ::Rewriteuser::get_rewrite($from));}
|
||||
|
||||
# maxid is not an integer -- return error
|
||||
|
||||
} else {$body="Error: maxid must be a number.";}
|
||||
|
||||
# Okay, $to is empty -- this means we're removing a redirect
|
||||
|
||||
} else {
|
||||
if (LJ::Rewriteuser::get_rewrite($from)){
|
||||
LJ::Rewriteuser::delete_rewrite_hash($from);
|
||||
$body="Success: $from is not redirected anywhere from now on. <br>Please restart httpd before setting any oy other redirects.";
|
||||
}
|
||||
}
|
||||
}
|
||||
return $body;
|
||||
}
|
||||
_code?>
|
||||
</body>
|
||||
</html>
|
||||
<?_c <LJDEP>
|
||||
lib: cgi-bin/console.pl, cgi-bin/ljlib.pl
|
||||
</LJDEP> _c?>
|
||||
|
||||
BIN
obsolete/htdocs/img/GJcommunity.gif
Executable file
BIN
obsolete/htdocs/img/GJcommunity.gif
Executable file
Binary file not shown.
|
After Width: | Height: | Size: 163 B |
BIN
obsolete/htdocs/img/GJuserinfo.gif
Executable file
BIN
obsolete/htdocs/img/GJuserinfo.gif
Executable file
Binary file not shown.
|
After Width: | Height: | Size: 258 B |
BIN
obsolete/htdocs/img/NPJcommunity.gif
Executable file
BIN
obsolete/htdocs/img/NPJcommunity.gif
Executable file
Binary file not shown.
|
After Width: | Height: | Size: 305 B |
BIN
obsolete/htdocs/img/NPJuserinfo.gif
Executable file
BIN
obsolete/htdocs/img/NPJuserinfo.gif
Executable file
Binary file not shown.
|
After Width: | Height: | Size: 140 B |
14
obsolete/htdocs/lj-gate/index.bml
Executable file
14
obsolete/htdocs/lj-gate/index.bml
Executable file
@@ -0,0 +1,14 @@
|
||||
<?page
|
||||
title=>Live LJR to LJ export.
|
||||
body<=
|
||||
<?h1 Welcome! h1?>
|
||||
<?p
|
||||
Here you can <a href="rlj2lj.bml">create or change</a> lj-gate or <a href="rlj_delete.bml">delete the gate</a>.
|
||||
p?>
|
||||
|
||||
<?p
|
||||
<a href="lj-gate-faq.html">LJ-gate FAQ</a>
|
||||
p?>
|
||||
|
||||
<=body
|
||||
page?>
|
||||
144
obsolete/htdocs/lj-gate/rlj2lj.bml
Executable file
144
obsolete/htdocs/lj-gate/rlj2lj.bml
Executable file
@@ -0,0 +1,144 @@
|
||||
<?_info
|
||||
nocache=>1
|
||||
_info?>
|
||||
<?page
|
||||
title=><?_ml .title _ml?>
|
||||
body<=
|
||||
<?h1 Update LJR -> LJ live export parameters. h1?>
|
||||
<br/>
|
||||
<?_code
|
||||
use strict;
|
||||
use DBI;
|
||||
use vars qw(%POST);
|
||||
use XMLRPC::Lite;
|
||||
use Digest::MD5 qw(md5_hex);
|
||||
|
||||
my $ret;
|
||||
|
||||
# copied from update.bml
|
||||
if ($LJ::SERVER_DOWN) {
|
||||
return LJ::server_down_html();
|
||||
}
|
||||
my $remote = LJ::get_remote();
|
||||
# Errors that are unlikely to change between starting
|
||||
# to compose an entry and submitting it.
|
||||
if ($remote) {
|
||||
if ($remote->underage) {
|
||||
return BML::redirect("$LJ::SITEROOT/agecheck/?s=1");
|
||||
}
|
||||
if ($remote->identity) {
|
||||
return "Non-$LJ::SITENAME users can't post, as they don't actually have journals here.\n";
|
||||
}
|
||||
if (! LJ::get_cap($remote, "can_post")) {
|
||||
return $LJ::MSG_NO_POST || $ML{'.error.cantpost'};
|
||||
}
|
||||
}
|
||||
else {
|
||||
return "Please login.\n";
|
||||
}
|
||||
|
||||
my $qhost = $LJ::DBINFO{'master'}->{'host'};
|
||||
my $quser = $LJ::DBINFO{'master'}->{'user'};
|
||||
my $qpass = $LJ::DBINFO{'master'}->{'pass'};
|
||||
my $qsock = $LJ::DBINFO{'master'}->{'sock'};
|
||||
my $qport = $LJ::DBINFO{'master'}->{'port'};
|
||||
#my $qdb = $LJ::DBINFO{'master'}->{'dbname'};
|
||||
my $qdb = "prod_ljgate";
|
||||
|
||||
my $alien=$POST{'alien'};
|
||||
my $alienpass=$POST{'alienpass'};
|
||||
|
||||
my $mode=$POST{'mode'};
|
||||
|
||||
my $xmlrpc;
|
||||
my $get_chal;
|
||||
my $chal;
|
||||
my $response;
|
||||
my $login;
|
||||
|
||||
#åÓÌÉ ÎÁÍ ÕÖÅ ÐÅÒÅÄÁÌÉ ÐÁÒÁÍÅÔÒÙ, ÄÏÂÁ×ÌÑÅÍ ÐÏÌØÚÏ×ÁÔÅÌÅÊ...
|
||||
if ($mode eq "add") {
|
||||
$xmlrpc = new XMLRPC::Lite;
|
||||
$xmlrpc->proxy("http://www.livejournal.com/interface/xmlrpc");
|
||||
$get_chal = $xmlrpc->call("LJ.XMLRPC.getchallenge");
|
||||
$chal = $get_chal->result->{'challenge'};
|
||||
$response = md5_hex($chal . md5_hex($alienpass));
|
||||
$login = $xmlrpc->call('LJ.XMLRPC.login', {
|
||||
'username' => $alien,
|
||||
'auth_method' => 'challenge',
|
||||
'auth_challenge' => $chal,
|
||||
'auth_response' => $response,
|
||||
});
|
||||
|
||||
if($login->fault){
|
||||
$ret .= "Got error: " . $login->faultstring . "<br>";
|
||||
$ret .= "<a href=rlj2lj.bml>Retry.</a>";
|
||||
return $ret;
|
||||
}
|
||||
|
||||
#ó×ÑÚÙ×ÁÅÍÓÑ Ó ÂÁÚÏÊ
|
||||
my $dbh = DBI->connect(
|
||||
"DBI:mysql:mysql_socket=$qsock;hostname=$qhost;port=$qport;database=$qdb",
|
||||
$quser, $qpass,
|
||||
) || die localtime(time) . ": Can't connect to database\n";
|
||||
my $sqh;
|
||||
|
||||
$sqh = $dbh->prepare("delete from our_user where our_user = ?");
|
||||
$sqh->execute($remote->{'user'});
|
||||
|
||||
$sqh = $dbh->prepare("insert INTO our_user (our_user,our_pass) VALUES(?, ?)");
|
||||
$sqh->execute($remote->{'user'}, $remote->{'password'});
|
||||
|
||||
$sqh = $dbh->prepare("INSERT INTO alien (alien,alienpass) VALUES(?, ?)");
|
||||
$sqh->execute($alien, $alienpass);
|
||||
|
||||
#õÚÎÁ£Í ID Ó×ÅÖÅÄÏÂÁ×ÌÅÎÎÙÈ ÐÏÌØÚÏ×ÁÔÅÌÅÊ
|
||||
#...ÎÁ Ó×Ï£Í ÓÅÒ×ÅÒÅ
|
||||
$sqh = $dbh->prepare("SELECT userid FROM our_user WHERE our_user=?");
|
||||
$sqh->execute($remote->{'user'});
|
||||
|
||||
my $userid=$sqh->fetchrow_array;
|
||||
|
||||
#...É ÎÁ ÞÕÖÏÍ
|
||||
$sqh = $dbh->prepare("SELECT alienid FROM alien WHERE alien=?");
|
||||
$sqh->execute($alien);
|
||||
|
||||
my $alienid=$sqh->fetchrow_array;
|
||||
|
||||
#äÏÂÁ×ÌÑÅÍ ÎÏ×ÕÀ ÚÁÐÉÓØ × ÔÁÂÌÉÃÕ ÖÕÒÎÁÌÏ×,
|
||||
#ËÏÔÏÒÙÅ ËÏÐÉÒÕÀÔÓÑ Ó ÎÁÛÅÇÏ ÓÅÒ×ÅÒÁ ×Ï×ÎÅ
|
||||
$sqh = $dbh->prepare("INSERT INTO rlj2lj(userid,alienid) VALUES (?,?)");
|
||||
$sqh->execute($userid, $alienid);
|
||||
|
||||
$ret .= "<br/>Export parameters updated: ";
|
||||
$ret .= "<a href=http://lj.rossia.org/users/$remote->{'user'}>$remote->{'user'}</a> is exported to <a href=http://www.livejournal.com/users/$alien>$alien</a>.";
|
||||
$ret .= "<br/><br/><a href=/lj-gate/>LJ-gate root</a>";
|
||||
|
||||
$dbh->disconnect;
|
||||
|
||||
} else {
|
||||
$ret .= "<form method=\"post\" action=\"rlj2lj.bml\">\n";
|
||||
$ret .= LJ::html_hidden(mode => 'add');
|
||||
$ret .= "<br>";
|
||||
$ret .= "<b>Livejournal.com</b><br>";
|
||||
$ret .= "<div class='formitemDesc'>" . BML::ml('Username') . "</div>";
|
||||
$ret .= LJ::html_text({'name' => 'alien',
|
||||
'size' => 15,
|
||||
'maxlength' => 15,
|
||||
});
|
||||
$ret .= "<div class='formitemDesc'>" . BML::ml('Password') . "</div>";
|
||||
$ret .= LJ::html_text({'name' => 'alienpass',
|
||||
'size' => 30,
|
||||
'maxlength' => 31,
|
||||
'type' => "password",});
|
||||
$ret .= "<br>";
|
||||
$ret .= LJ::html_submit('confirm', $ML{'.confirm.submit'});
|
||||
$ret .= "</form>\n";
|
||||
};
|
||||
|
||||
return $ret;
|
||||
|
||||
_code?>
|
||||
|
||||
<=body
|
||||
page?>
|
||||
104
obsolete/htdocs/lj-gate/rlj_delete.bml
Executable file
104
obsolete/htdocs/lj-gate/rlj_delete.bml
Executable file
@@ -0,0 +1,104 @@
|
||||
<?_info
|
||||
nocache=>1
|
||||
_info?>
|
||||
<?page
|
||||
title=><?_ml .title _ml?>
|
||||
body<=
|
||||
<?h1 Remove LJR -> LJ live export. h1?>
|
||||
<br/>
|
||||
<?_code
|
||||
use strict;
|
||||
use DBI;
|
||||
use vars qw(%POST);
|
||||
|
||||
# copied from update.bml
|
||||
if ($LJ::SERVER_DOWN) {
|
||||
return LJ::server_down_html();
|
||||
}
|
||||
my $remote = LJ::get_remote();
|
||||
# Errors that are unlikely to change between starting
|
||||
# to compose an entry and submitting it.
|
||||
if ($remote) {
|
||||
if ($remote->underage) {
|
||||
return BML::redirect("$LJ::SITEROOT/agecheck/?s=1");
|
||||
}
|
||||
if ($remote->identity) {
|
||||
return "Non-$LJ::SITENAME users can't post, as they don't actually have journals here.\n";
|
||||
}
|
||||
if (! LJ::get_cap($remote, "can_post")) {
|
||||
return $LJ::MSG_NO_POST || $ML{'.error.cantpost'};
|
||||
}
|
||||
}
|
||||
else {
|
||||
return "Please login.\n";
|
||||
}
|
||||
|
||||
my $qhost = $LJ::DBINFO{'master'}->{'host'};
|
||||
my $quser = $LJ::DBINFO{'master'}->{'user'};
|
||||
my $qpass = $LJ::DBINFO{'master'}->{'pass'};
|
||||
my $qsock = $LJ::DBINFO{'master'}->{'sock'};
|
||||
my $qport = $LJ::DBINFO{'master'}->{'port'};
|
||||
#my $qdb = $LJ::DBINFO{'master'}->{'dbname'};
|
||||
my $qdb = "prod_ljgate";
|
||||
|
||||
my $dbh = DBI->connect(
|
||||
"DBI:mysql:mysql_socket=$qsock;hostname=$qhost;port=$qport;database=$qdb",
|
||||
$quser, $qpass,
|
||||
) || die localtime(time) . ": Can't connect to database\n";
|
||||
my $sqh;
|
||||
|
||||
#ID ÕÄÁÌÑÅÍÏÇÏ ÐÏÌØÚÏ×ÁÔÅÌÑ LJR
|
||||
my $user_id;
|
||||
#ID ÕÄÁÌÑÅÍÏÇÏ ÐÏÌØÚÏ×ÁÔÅÌÑ LiveJournal
|
||||
my $alien_id;
|
||||
|
||||
#÷Ù×ÏÄÉÍ ÆÏÒÍÕ ÉÌÉ ÄÏÂÁ×ÌÑÅÍ ÐÏÌØÚÏ×ÁÔÅÌÑ × ÂÁÚÕ?
|
||||
my $mode=$POST{'mode'};
|
||||
|
||||
#÷Ù×ÏÄ
|
||||
my $ret;
|
||||
|
||||
#åÓÌÉ ÎÁÍ ÕÖÅ ÐÅÒÅÄÁÌÉ ÐÁÒÁÍÅÔÒÙ, ÕÄÁÌÑÅÍ ÐÏÌØÚÏ×ÁÔÅÌÑ...
|
||||
if ($mode eq "del") {
|
||||
#úÁÂÉÒÁÅÍ ÉÚ ÔÁÂÌÉÃÙ our_user ID, ÌÏÇÉÎ É ÐÁÒÏÌØ ÕÄÁÌÑÅÍÏÇÏ ÐÏÌØÚÏ×ÁÔÅÌÑ
|
||||
my $sqh=$dbh->prepare("SELECT userid FROM our_user WHERE our_user=?");
|
||||
$sqh->execute($remote->{'user'});
|
||||
$user_id = $sqh->fetchrow_array;
|
||||
|
||||
#úÁÂÉÒÁÅÍ ÉÚ ÔÁÂÌÉÃÙ rlj2lj ID ÐÏÌØÚÏ×ÁÔÅÌÑ ÞÕÖÏÇÏ ÒÅÓÕÒÓÁ
|
||||
$sqh = $dbh->prepare("SELECT alienid FROM rlj2lj WHERE userid=?");
|
||||
$sqh->execute ($user_id);
|
||||
$alien_id = $sqh->fetchrow_array;
|
||||
|
||||
#õÄÁÌÑÅÍ ÚÁÐÉÓØ ÉÚ ÔÁÂÌÉÃÙ rlj2lj
|
||||
$sqh = $dbh->prepare("DELETE FROM rlj2lj WHERE userid=?");
|
||||
$sqh->execute($user_id);
|
||||
|
||||
#õÄÁÌÑÅÍ ÄÁÎÎÙÅ Ï ÞÕÖÏÍ ÐÏÌØÚÏ×ÁÔÅÌÅ
|
||||
$sqh = $dbh->prepare("DELETE FROM alien WHERE alienid=?");
|
||||
$sqh->execute($alien_id);
|
||||
|
||||
#õÄÁÌÑÅÍ ÄÁÎÎÙÅ Ï ÎÁÛÅÍ ÐÏÌØÚÏ×ÁÔÅÌÅ
|
||||
$sqh = $dbh->prepare("DELETE FROM our_user WHERE userid=?");
|
||||
$sqh->execute($user_id);
|
||||
|
||||
#õÄÁÌÑÅÍ ÄÁÎÎÙÅ Ï ÐÏÓÔÉÎÇÁÈ
|
||||
$sqh = $dbh->prepare("DELETE FROM rlj_lj_id WHERE userid=?");
|
||||
$sqh->execute($user_id);
|
||||
|
||||
$ret .= "<br/>Live LJR -> LJ export removed.";
|
||||
$ret .= "<br/><br/><a href=/lj-gate/>LJ-gate root</a>";
|
||||
}
|
||||
#...× ÐÒÏÔÉ×ÎÏÍ ÓÌÕÞÁÅ ×Ù×ÏÄÉÍ ÆÏÒÍÕ
|
||||
else {
|
||||
$ret .= "<form method=\"post\" action=\"rlj_delete.bml\">\n";
|
||||
$ret .= LJ::html_hidden(mode => 'del');
|
||||
$ret .= LJ::html_submit('confirm', 'Remove export!');
|
||||
};
|
||||
|
||||
$dbh->disconnect;
|
||||
return $ret;
|
||||
|
||||
_code?>
|
||||
<=body
|
||||
page?>
|
||||
10
obsolete/htdocs/paidaccounts/index.html
Executable file
10
obsolete/htdocs/paidaccounts/index.html
Executable file
@@ -0,0 +1,10 @@
|
||||
<title>Paid Accounts</title>
|
||||
<META content="text/html; charset=koi8-r" http-equiv=Content-Type>
|
||||
|
||||
<h2>Мы работаем над этим!!</h2>
|
||||
|
||||
<p>Пока что система оплаты не налажена -- мы не можем ни принимать
|
||||
деньги за платные аккаунты, ни принимать ваши пожертвования на
|
||||
развитие и поддержку сервеа. Но мы работаем над этим; следите за
|
||||
новостями.
|
||||
|
||||
Reference in New Issue
Block a user