define ( 'FRIENDIKA_VERSION', '2.2.989' );
define ( 'DFRN_PROTOCOL_VERSION', '2.21' );
-define ( 'DB_UPDATE_VERSION', 1054 );
+define ( 'DB_UPDATE_VERSION', 1055 );
define ( 'EOL', "<br />\r\n" );
define ( 'ATOM_TIME', 'Y-m-d\TH:i:s\Z' );
`created` DATETIME NOT NULL ,
`uid` INT(11) UNSIGNED NOT NULL,
`password` CHAR(255) NOT NULL,
+ `language` CHAR(16) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE = MYISAM DEFAULT CHARSET=utf8;
}}
+function push_lang($language) {
+ global $lang, $a;
+
+ $a->langsave = $lang;
+
+ if(isset($a->strings) && count($a->strings)) {
+ $a->stringsave = $a->strings;
+ }
+ $a->strings = array();
+ load_translation_table($language);
+ $lang = $language;
+}
+
+function pop_lang() {
+ global $lang, $a;
+ if(isset($a->stringsave))
+ $a->strings = $a->stringsave;
+ else
+ $a->strings = array();
+
+ $lang = $a->langsave;
+}
+
// load string translation table for alternate language
logger('dfrn_confirm: request: info updated');
- $r = q("SELECT * FROM `contact` LEFT JOIN `user` ON `contact`.`uid` = `user`.`uid`
+ $r = q("SELECT `contact`.*, `user`.* FROM `contact` LEFT JOIN `user` ON `contact`.`uid` = `user`.`uid`
WHERE `contact`.`id` = %d LIMIT 1",
intval($dfrn_record)
);
if((count($r)) && ($r[0]['notify-flags'] & NOTIFY_CONFIRM)) {
+ push_lang($r[0]['language']);
$tpl = (($new_relation == REL_BUD)
? get_intltext_template('friend_complete_eml.tpl')
: get_intltext_template('intro_complete_eml.tpl'));
if(!$res) {
// pointless throwing an error here and confusing the person at the other end of the wire.
}
+ pop_lang();
}
xml_status(0); // Success
return; // NOTREACHED
require_once('bbcode.php');
if($importer['notify-flags'] & NOTIFY_MAIL) {
+ push_lang($importer['language']);
+
// name of the automated email sender
$msg['notificationfromname'] = t('Administrator');
// noreply address to send from
$email_html_body_tpl,
$email_text_body_tpl
);
+
+ pop_lang();
}
xml_status(0);
// NOTREACHED
proc_run('php',"include/notifier.php","comment-import","$posted_id");
if((! $is_like) && ($importer['notify-flags'] & NOTIFY_COMMENT) && (! $importer['self'])) {
+ push_lang($importer['language']);
require_once('bbcode.php');
$from = stripslashes($datarray['author-name']);
$email_html_body_tpl,
$email_text_body_tpl
);
-
+ pop_lang();
}
}
xml_status(0);
foreach($myconv as $conv) {
if(! link_compare($conv['author-link'],$importer_url))
continue;
+
+ push_lang($importer['language']);
require_once('bbcode.php');
$from = stripslashes($datarray['author-name']);
$email_html_body_tpl,
$email_text_body_tpl
);
-
+ pop_lang();
break;
}
}
continue;
}
- $res = mail($recip, sprintf(t('Please join my network on %s'), $a->config['sitename']),
+ $res = mail($recip, sprintf( t('Please join my network on %s'), $a->config['sitename']),
$message,
"From: " . $a->user['email'] . "\n"
. 'Content-type: text/plain; charset=UTF-8' . "\n"
// Send a notification email to the conversation owner, unless the owner is me and I wrote this item
if(($user['notify-flags'] & NOTIFY_COMMENT) && ($contact_record != $author)) {
+ push_lang($user['language']);
require_once('bbcode.php');
$from = $author['name'];
$email_html_body_tpl,
$email_text_body_tpl
);
+
+ pop_lang();
}
}
else {
// let me know if somebody did a wall-to-wall post on my profile
if(($user['notify-flags'] & NOTIFY_WALL) && ($contact_record != $author)) {
+ push_lang($user['language']);
require_once('bbcode.php');
$from = $author['name'];
$email_html_body_tpl,
$email_text_body_tpl
);
+ pop_lang();
}
}
if(! function_exists('register_post')) {
function register_post(&$a) {
+ global $lang;
+
$verified = 0;
$blocked = 1;
}
$hash = random_string();
- $r = q("INSERT INTO `register` ( `hash`, `created`, `uid`, `password` ) VALUES ( '%s', '%s', %d, '%s' ) ",
+ $r = q("INSERT INTO `register` ( `hash`, `created`, `uid`, `password`, `language` ) VALUES ( '%s', '%s', %d, '%s', '%s' ) ",
dbesc($hash),
dbesc(datetime_convert()),
intval($newuid),
- dbesc($new_password)
+ dbesc($new_password),
+ dbesc($lang)
+ );
+
+ $r = q("SELECT `language` FROM `user` WHERE `email` = '%s' LIMIT 1",
+ dbesc($a->config['admin_email'])
);
+ if(count($r))
+ push_lang($r[0]['language']);
+ else
+ push_lang('en');
+
$email_tpl = get_intltext_template("register_verify_eml.tpl");
$email_tpl = replace_macros($email_tpl, array(
'From: ' . t('Administrator') . '@' . $_SERVER['SERVER_NAME'] . "\n"
. 'Content-type: text/plain; charset=UTF-8' . "\n"
. 'Content-transfer-encoding: 8bit' );
+
+ pop_lang();
+
if($res) {
info( t('Your registration is pending approval by the site owner.') . EOL ) ;
goaway($a->get_baseurl());
function regmod_content(&$a) {
+ global $lang;
+
$_SESSION['return_url'] = $a->cmd;
if(! local_user()) {
proc_run('php',"include/directory.php","$url");
}
+ push_lang($register[0]['language']);
+
$email_tpl = get_intltext_template("register_open_eml.tpl");
$email_tpl = replace_macros($email_tpl, array(
'$sitename' => $a->config['sitename'],
. 'Content-type: text/plain; charset=UTF-8' . "\n"
. 'Content-transfer-encoding: 8bit' );
+ pop_lang();
+
if($res) {
info( t('Account approved.') . EOL );
return;
q("ALTER TABLE `item` ADD `extid` CHAR( 255 ) NOT NULL AFTER `parent-uri` , ADD INDEX ( `extid` ) ");
}
+function update_1054() {
+ q("ALTER TABLE `register` ADD `language` CHAR( 16 ) NOT NULL AFTER `password` ");
+}