<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<meta http-equiv="Content-Language" content="nl">
<TITLE>Site@School migration tool</TITLE>
<META http-equiv=Content-Type content="text/html; charset=windows-1252">
<STYLE>A:link {
	BACKGROUND: none transparent scroll repeat 0% 0%; COLOR: #638ab9; TEXT-DECORATION: none
}
A:active {
	BACKGROUND: none transparent scroll repeat 0% 0%; COLOR: #638ab9; TEXT-DECORATION: none
}
A:visited {
	BACKGROUND: none transparent scroll repeat 0% 0%; COLOR: #638ab9; TEXT-DECORATION: none
}
A:hover {
	BACKGROUND: none transparent scroll repeat 0% 0%; COLOR: #ff0000; TEXT-DECORATION: none
}
TEXTAREA {
	COLOR: #000000; FONT-FAMILY: verdana, arial; BACKGROUND-COLOR: #ccdaec
}
Input.BUTTON {
	border:1px outset #ccdaec; BACKGROUND-COLOR: #ccdaec
}
SELECT {
	BORDER-RIGHT: #ccdaec 1px inset; BORDER-TOP: #ccdaec 1px inset; BORDER-LEFT: #ccdaec 1px inset; COLOR: #000000; BORDER-BOTTOM: #ccdaec 1px inset; FONT-FAMILY: verdana, arial; BACKGROUND-COLOR: #ccdaec
}
.text {
	FONT-SIZE: 10pt; FONT-FAMILY: Verdana, Arial
}
.link {
	FONT-WEIGHT: bold; FONT-SIZE: 10pt; COLOR: #638ab9; FONT-FAMILY: Verdana, Arial
}
.heading {
	FONT-WEIGHT: bold; FONT-SIZE: 13pt; COLOR: #638ab9; FONT-FAMILY: Verdana, Arial
}


INPUT.textfield {
	BORDER-RIGHT: #ccdaec 1px inset; BORDER-TOP: #ccdaec 1px inset; BORDER-LEFT: #ccdaec 1px inset; BORDER-BOTTOM: #ccdaec 1px inset; BACKGROUND-COLOR: #ccdaec
}
</STYLE>


</HEAD>
<BODY style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana, Arial, Helvetica" bottomMargin=0 vLink=#000000 aLink=#466c9b link=#000000 bgColor=#ffffff leftMargin=0 topMargin=0 rightMargin=0>


<TABLE style="BORDER-COLLAPSE: collapse" borderColor=#111111 height=45
cellSpacing=0 cellPadding=0 width="100%"
background=../graphics/banner-bg.gif border=0>
  <TBODY>
  <TR>
    <TD align=left width="5%"><IMG height=45
      src="../graphics/banner-left.gif" width=4 border=0></TD>
    <TD align=right width="70%">
    <b><font size="6" color="#FFFFFF">Migration of 2.0 to 2.1</font></b></TD>
    <TD align=right width="3%"><IMG height=45
      src="../graphics/banner-right.gif" width=3
border=0></TD></TR></TBODY></TABLE>
<TABLE id=AutoNumber3 style="BORDER-COLLAPSE: collapse" borderColor=#111111
cellSpacing=0 cellPadding=0 width="100%" border=0>
  <TBODY>
  <TR>
    <TD vAlign=top>
      <TABLE cellPadding=5 width="100%" border=0>
        <TBODY>
        <TR>
          <TD>
<?php
if($_GET[step] == "")
{
?>
          <form method="POST" action="migrate2.0_2.1.php?step=1">
            <TABLE style="BORDER-COLLAPSE: collapse" borderColor=#111111
            cellSpacing=0 cellPadding=4 width="100%" border=0>
              <TBODY>
              <TR>
                <TD align=center width="25%">&nbsp;
                </TD>
                <TD vAlign=top align=left width="65%">
                <SPAN class=heading>Welcome<BR></SPAN></TD>
                <TD vAlign=top align=middle width="10%">&nbsp;</TD>
              </TR>
              <TR>
                <TD align=center width="25%">
                <img border="0" src="../graphics/install_banner.jpg"></TD>
                <TD vAlign=top align=middle width="65%">
                <table border="1" height="300" cellpadding="5" cellspacing="0" style="border-collapse: collapse" bordercolor="#E5E5E5" width="100%" id="AutoNumber4" bgcolor="#F7F7F7">
                  <tr>
                    <td width="100%" valign="top"><span class=text>
                    <br><br><br>This wizard will perform the migration of version 2.0 to 2.1 .<br><br>
                     Before you continue , please make sure you have made a <b>backup</b> of you MYSQL database.<br>
                     This can be done with <a href="http://phpmyadmin.sourceforge.net/">PHPMYADMIN</a> or via backup tool from S@S.
                    </span></td>
                  </tr>
                </table>
                </TD>
                <TD vAlign=top align=middle width="10%"></TD></TR>
              <TR>
                <TD align=center width="25%">&nbsp;
                </TD>
                <TD vAlign=top align=right width="65%">

                 <p>
                  <input type="submit" value="Continue" name="B1" class="BUTTON">
                  </p>
                </form>
<?php
}
if($_GET[step] == "1")
{
$installdir = $_SERVER["DOCUMENT_ROOT"]."/starnet";
$installdir = str_replace("//","/",$installdir);
?>


          <form method="POST" action="migrate2.0_2.1.php?step=2">

            <TABLE style="BORDER-COLLAPSE: collapse" borderColor=#111111
            cellSpacing=0 cellPadding=4 width="100%" border=0>
              <TBODY>
              <TR>
                <TD align=center width="25%">&nbsp;
                </TD>
                <TD vAlign=top align=left width="65%">
                <SPAN class=heading>Step 1<BR></SPAN><span class="text">Database migration.</span></TD>
                <TD vAlign=top align=middle width="10%">&nbsp;</TD>
              </TR>
              <TR>
                <TD align=center width="25%">
                <img border="0" src="../graphics/install_banner.jpg"></TD>
                <TD vAlign=top align=middle width="65%">
                <table border="1" height="300" cellpadding="5" cellspacing="0" style="border-collapse: collapse" bordercolor="#E5E5E5" width="100%" id="AutoNumber4" bgcolor="#F7F7F7">
                  <tr>
                    <td width="100%" valign="top"><span class=text>
                   <br><br>Tables will be altered during the next step..<br>Click on continue.</td>
                  </tr>
                </table>
                </TD>
                <TD vAlign=top align=middle width="10%"></TD></TR>
              <TR>
                <TD align=center width="25%">&nbsp;
                </TD>
                <TD vAlign=top align=right width="65%">


                 <p>
                  <input type="submit" value="Continue" name="B1" class="BUTTON">
                </form>
<?php
}
if($_GET[step] == "2")
{
?>
            <TABLE style="BORDER-COLLAPSE: collapse" borderColor=#111111
            cellSpacing=0 cellPadding=4 width="100%" border=0>
              <TBODY>
              <TR>
                <TD align=center width="25%">&nbsp;
                </TD>
                <TD vAlign=top align=left width="65%">
                <SPAN class=heading>Step 2<BR></SPAN></TD>
                <TD vAlign=top align=middle width="10%">&nbsp;</TD>
              </TR>
              <TR>
                <TD align=center width="25%">
                <img border="0" src="../graphics/install_banner.jpg"></TD>
                <TD vAlign=top align=middle width="65%">
                <table border="1" height="300" cellpadding="5" cellspacing="0" style="border-collapse: collapse" bordercolor="#E5E5E5" width="100%" id="AutoNumber4" bgcolor="#F7F7F7">
                  <tr>
                  <td width="100%" valign="top"><span class=text>

<?php
echo "start migration .....<br><br>"   ;
include("../configuration/database.inc.php");       
mysql_connect("$db_server", "$db_username", "$db_password");
mysql_select_db("$db_name");

mysql_query("ALTER TABLE $table_pages add history varchar(20)");
if (mysql_errno() != 0)
  {
    echo mysql_errno() . ": " . mysql_error(). "\n";
  }
$table_prot_pages = $dbprefix."prot_pages" ;
mysql_query("ALTER TABLE $table_prot_pages add history varchar(20)");
if (mysql_errno() != 0)
  {
    echo mysql_errno() . ": " . mysql_error(). "\n";
  }

//insert new configuration item
$RecordCount = 0 ;
$query = "SELECT config_value FROM $table_configuration where config_key='number_pupilpages'" ;        
$result = mysql_query($query) or die_script(mysql_error());
$RecordCount = mysql_num_rows($result);
if($RecordCount == 1) {
  Print "number_pupilpages already exists in configuration, <br> " ;
  } else {
  mysql_query("INSERT INTO $table_configuration VALUES ('number_pupilpages', '3', '')");
  if (mysql_errno() != 0)
  {
    echo mysql_errno() . ": " . mysql_error(). "\n";
  }
}

$RecordCount = 0 ;
$query = "SELECT config_value FROM $table_configuration where config_key='user_path'" ;        
$result = mysql_query($query) or die_script(mysql_error());
$RecordCount = mysql_num_rows($result);
if($RecordCount == 1) {
  Print "user_path already exists in configuration, <br> " ;
  } else {
  mysql_query("INSERT INTO $table_configuration VALUES ('user_path', '', '')");
  if (mysql_errno() != 0)
  {
    echo mysql_errno() . ": " . mysql_error(). "\n";
  } 
}


//migrate news tables
$modtable_news_categories = "$dbprefix" . "m_news_cat";

mysql_query("ALTER TABLE $modtable_news_categories ADD ispage tinyint(4) NOT NULL;");
if (mysql_errno() != 0)
  {
   echo mysql_errno() . ": " . mysql_error(). "<br>";
  }
mysql_query("ALTER TABLE $modtable_news_categories ADD header text NOT NULL;");
if (mysql_errno() != 0)
  {
   echo mysql_errno() . ": " . mysql_error(). "<br>";
  }
mysql_query("UPDATE $modtable_news_categories SET ispage = 0 WHERE id > 0;");
if (mysql_errno() != 0)
  {
   echo mysql_errno() . ": " . mysql_error(). "<br>";
  }
mysql_query("UPDATE $table_modules SET options = 'frontpage.php,News Page,frontpage_cat.php,Category per page,archive.php,Archive,archive_prot.php,Protected Archive' WHERE location = 'sn_news';");
if (mysql_errno() != 0)
  {
   echo mysql_errno() . ": " . mysql_error(). "<br>";
  }

// migrate all users to one table
mysql_query("alter table $table_users add type tinyint(4)");
if (mysql_errno() != 0)
  {
   echo mysql_errno() . ": " . mysql_error(). "<br>";
  }
mysql_query("alter table $table_users add class int(11)");
if (mysql_errno() != 0)
  {
   echo mysql_errno() . ": " . mysql_error(). "<br>";
  }
mysql_query("UPDATE $table_users set type = 20 WHERE type IS NULL or type = 0");
if (mysql_errno() != 0)
  {
   echo mysql_errno() . ": " . mysql_error(). "<br>";
  }  

  $result = mysql_query("SELECT MAX(id) FROM $table_students ");
  $max_id = mysql_result($result,0) + 10 ;
  unset($query);
  unset($result);
  
  //print $max_id;
  $result = mysql_query("UPDATE $table_users SET ID=ID+$max_id");
  if (mysql_errno() != 0)
  {
   echo mysql_errno() . ": " . mysql_error(). "<br>";
  }
  $result = mysql_query("SELECT id, username, fullname, password, email, class FROM $table_students ");
  if (mysql_errno() != 0)
  {
   echo mysql_errno() . ": " . mysql_error(). "<br>";
  }
  print "<br>Migrating Pupils<p>" ;
  mysql_query("ALTER TABLE $table_studentpages ADD change_date DATE NOT NULL");
  while ($student_list = mysql_fetch_array($result)) {
  $RecordCount = 0 ;
  $query2 = "SELECT username FROM $table_users WHERE username='$student_list[1]'" ;
  $result2 = mysql_query($query2) or die_script(mysql_error());
  $RecordCount = mysql_num_rows($result2);
  if($RecordCount > 0) {
   Print "Pupil already exists with Userid: <b>".$student_list[1].
    "</b> Fulname: <b>".$student_list[2].
    "</b> Password: <b>".$student_list[3].
    "</b> Email: <b>".$student_list[4].
    "</b> Class: <b>".$student_list[5].
    "</b> . <br> " ;
    mysql_query("UPDATE $table_users set class = '$student_list[5]' WHERE username='$student_list[1]'");   //set the class
    mysql_query("UPDATE $table_users set type = '21' WHERE username='$student_list[1]'");   //set the type to 21
if (mysql_errno() != 0)
{
  echo mysql_errno() . ": " . mysql_error(). "\n";
}
    } else {
  mysql_query("INSERT INTO $table_users (id, username, name , password, email, class, type, access, highvisibility) 
   VALUES ('$student_list[0]', '$student_list[1]',  '$student_list[2]', '$student_list[3]', '$student_list[4]', '$student_list[5]' , '1', '000000000000,000000000000', '0')");
  if (mysql_errno() != 0)
  {
   echo mysql_errno() . ": " . mysql_error(). "\n";
  }
  } 
 	 }
 	 print "<br>Migrating Teachers<p>" ;
 	$result = mysql_query("SELECT id, username, fullname, password, email, class FROM $table_teachers ");
  if (mysql_errno() != 0)
  {
   echo mysql_errno() . ": " . mysql_error(). "\n";
  }
  while ($teacher_list = mysql_fetch_array($result)) {
  $RecordCount = 0 ;
  $query2 = "SELECT username, type FROM $table_users WHERE username='$teacher_list[1]'" ;
  $result2 = mysql_query($query2) or die_script(mysql_error());
  $RecordCount = mysql_num_rows($result2);
  if($RecordCount > 0) {
   Print "Teacher already exists with Userid: <b>".$teacher_list[1].
    "</b> Fullname: <b>".$teacher_list[2].
    "</b> Password: <b>".$teacher_list[3].
    "</b> Email: <b>".$teacher_list[4].
    "</b> Class: <b>".$teacher_list[5].
    "</b> . <br> " ;
    mysql_query("UPDATE $table_users set class = '$teacher_list[5]' WHERE username='$teacher_list[1]'");         //set the class
    mysql_query("UPDATE $table_users set type = '22' WHERE username='$teacher_list[1]'");         //set the type to 22
    } else {
  mysql_query("INSERT INTO $table_users (id, username, name , password, email, class, type, access, highvisibility) 
   VALUES (NULL , '$teacher_list[1]',  '$teacher_list[2]', '$teacher_list[3]', '$teacher_list[4]', '$teacher_list[5]' , '2', '000000000000,000000000000', '0')");
  if (mysql_errno() != 0)
  {
   echo mysql_errno() . ": " . mysql_error(). "\n";
  } 
  }
 	 }
 	 print "<br>If there are duplicate userids reported , best is to print this page for reference.<p>Migration is finished!<br>
    This means that teachers, pupils and users are now in one table (users) in mysql.<br>
    If you wish you can delete the teacher and students table in mysql.<p>
    Migration is finished for version 2.1<br>You can now continue normal operation on your site."   ;
?>
<br><br>
<b>The S@S team.</b><br>
</span></td>



                  </tr>
                </table>
                </TD>
                <TD vAlign=top align=middle width="10%"></TD></TR>
              <TR>
                <TD align=center width="25%">&nbsp;
                </TD>
                <TD vAlign=top align=right width="65%">
                  <p>
<?php
}
?>
               </TD>
                <TD vAlign=top align=middle width="10%">&nbsp;</TD></TR>
              </TBODY></TABLE></TD></TR></TBODY></TABLE></TD>
    </TR></TBODY></TABLE></BODY></HTML>
