diff --git a/inside/migration/inside_functions.php b/inside/migration/inside_functions.php
index d84f67c..bc5683a 100644
--- a/inside/migration/inside_functions.php
+++ b/inside/migration/inside_functions.php
@@ -17,13 +17,12 @@ function update_user($username, $password) {
$uid = getCurrentUser();
/* Update the current user's username and password */
- $sql = sprintf("UPDATE din_user SET user='%s', password=PASSWORD('%s') WHERE id=%s LIMIT 1",
+ $sql = sprintf("UPDATE din_user SET username='%s', password=PASSWORD('%s') WHERE id=%s LIMIT 1",
mysql_real_escape_string($username),
mysql_real_escape_string($password),
$uid);
- //$result = $conn->query($sql);
- return true;
- //return ! DB :: isError($result) and $ldap_updated;
+ $result = $conn->query($sql);
+ return ! DB :: isError($result);
}
function user_exists($username) {
$conn = db_connect();
@@ -76,8 +75,12 @@ function find_groups() {
if(DB :: isError($result)) {
return false;
}
+ $arr = array();
+ foreach($result as $column => $group) {
+ $arr[] = $group['posix_group'];
+ }
- return $result;
+ return $arr;
}
function enc_password($password, $key) {
$iv_size = mcrypt_get_iv_size(MCRYPT_RIJNDAEL_256, MCRYPT_MODE_ECB);
diff --git a/inside/migration/js/byebye_inside.js b/inside/migration/js/byebye_inside.js
index e4c61f7..1e37295 100644
--- a/inside/migration/js/byebye_inside.js
+++ b/inside/migration/js/byebye_inside.js
@@ -3,9 +3,9 @@ function init_validation() {
rules: {
username: {
required: true,
- rangelength: [3, 15],
+ rangelength: [3, 12],
lettersonly: true,
- remote: "./migration/user_exists.php",
+ remote: "./migration/username_available.php",
},
password: {
required: true,
@@ -17,6 +17,11 @@ function init_validation() {
equalTo: "#id_password",
},
},
+ messages: {
+ username: {
+ remote: 'Username is taken.',
+ }
+ },
submitHandler: function(form) {
var form_username = $("#id_username").val();
var form_password = $("#id_password").val();
@@ -46,7 +51,7 @@ function init_validation() {
/* Output the errors (will never happend). */
var output = '
';
for(var error in result.errors) {
- output += '
'+ error +': ' + result.errors[error][0] + '
';
+ output += '
'+ error +': ' + result.errors[error] + '
';
}
output += '
';
$("#infomodal").prepend(output);
diff --git a/inside/migration/ldap_api_functions.php b/inside/migration/ldap_api_functions.php
index cd7e061..8c6b684 100644
--- a/inside/migration/ldap_api_functions.php
+++ b/inside/migration/ldap_api_functions.php
@@ -39,4 +39,10 @@ function ldap_add_user($username, $firstname, $lastname, $email, $password, $gro
$result = var_export(file_get_contents("http://brukerinfo.neuf.no/addNewUser.php?" . implode("&", $arr)), true);
return $result;
}
+function _log($str) {
+ $time = date("[Y-m-d H:i:s.u]");
+ file_put_contents("migration.log", $time .
+ $str . "\n", FILE_APPEND);
+}
+
?>
diff --git a/inside/migration/migration.log b/inside/migration/migration.log
new file mode 100644
index 0000000..7c605c1
--- /dev/null
+++ b/inside/migration/migration.log
@@ -0,0 +1,20 @@
+[2011-08-11 18:11:21.000000]'Added cn=olivaqtest,ou=Groups,dc=neuf,dc=no
+Added uid=olivaqtest,ou=People,dc=neuf,dc=no
+Created home directory
+Added cn=olivaqtest,ou=auto.home,ou=Automount,dc=neuf,dc=no
+Created users kerberos credentials
+Could not add olivaqtest to cn=Array,ou=Groups,dc=neuf,dc=no
+Could not add olivaqtest to cn=Array,ou=Groups,dc=neuf,dc=no
+'
+[2011-08-11 18:37:45.000000]UPDATE din_user SET user='olivaqtesting', password=PASSWORD('hemmelig') WHERE id=1 LIMIT 1
+[2011-08-11 18:38:23.000000]UPDATE din_user SET user='olivaqtesting', password=PASSWORD('hemmelig') WHERE id=1 LIMIT 1
+[2011-08-11 18:38:23.000000][db_error: message="DB Error: no such field" code=-19 mode=return level=notice prefix="" info="UPDATE din_user SET user='olivaqtesting', password=PASSWORD('hemmelig') WHERE id=1 LIMIT 1 [nativecode=1054 ** Unknown column 'user' in 'field list']"]
+[2011-08-11 18:39:48.000000]UPDATE din_user SET username='olivaqtesting', password=PASSWORD('hemmelig') WHERE id=1 LIMIT 1
+[2011-08-11 18:47:48.000000]'Added cn=olivaqtestin,ou=Groups,dc=neuf,dc=no
+Added uid=olivaqtestin,ou=People,dc=neuf,dc=no
+Created home directory
+Added cn=olivaqtestin,ou=auto.home,ou=Automount,dc=neuf,dc=no
+Created users kerberos credentials
+Added olivaqtestin to cn=dns-alle,ou=Groups,dc=neuf,dc=no
+Added olivaqtestin to cn=dns-administrator,ou=Groups,dc=neuf,dc=no
+'
diff --git a/inside/migration/submit_user.php b/inside/migration/submit_user.php
index ce30bc6..24d9d26 100644
--- a/inside/migration/submit_user.php
+++ b/inside/migration/submit_user.php
@@ -9,14 +9,14 @@ if( !( isset($_POST['username']) || isset($_POST['password']) || isset($_POST['p
/* Server side field validation */
$errors = Array();
/* Validate username */
-if( strlen($_POST['username']) < 3 && strlen($_POST['username']) > 15 ) {
- $result['errors']['username'][] = "Please enter a value between 3 and 15 characters long.";
+if( strlen($_POST['username']) < 3 && strlen($_POST['username']) > 12 ) {
+ $result['errors']['username'][] = "Please enter a username between 3 and 12 characters long.";
}
if( !preg_match("/[a-z]/", $_POST['username']) ) {
$result['errors']['username'][] = "Please enter only lowercase letters (english alphabet).";
}
-if( file_get_contents("./user_exists.php") == "false" ) {
- $result['errors']['username'][] = "Username is taken.";
+if( file_get_contents("./username_available.php") == "false" ) {
+ $result['errors']['username'][] = "Username taken.";
}
/* Validate password */
if( strlen($_POST['password']) < 8 ) {
@@ -38,11 +38,11 @@ if ( !isset($result) ) {
/* migrated? */
$migrated = ldap_add_user($_POST['username'], $user->firstname, $user->lastname, $user->email, $_POST['password'], $groups);
/* Note: Assume success every time, but log result of migrated anyway. */
- /* TODO nikolark log $migrated. */
+ _log($migrated);
set_migrated();
- echo json_encode( Array('result' => 'success', 'groups' => $groups);
+ echo json_encode( Array('result' => 'success', 'groups' => $groups) );
} else {
- echo json_encode( Array('result' => 'error', 'errors' => Array('database' => 'User not update.')) );
+ echo json_encode( Array('result' => 'error', 'errors' => Array('database' => 'User not migrated.')) );
}
}
else {
diff --git a/inside/migration/user_exists.php b/inside/migration/user_exists.php
deleted file mode 100644
index aac7ff6..0000000
--- a/inside/migration/user_exists.php
+++ /dev/null
@@ -1,10 +0,0 @@
-
diff --git a/inside/migration/username_available.php b/inside/migration/username_available.php
new file mode 100644
index 0000000..d906581
--- /dev/null
+++ b/inside/migration/username_available.php
@@ -0,0 +1,17 @@
+