www-thermferm/profiles.php

Fri, 25 Jul 2014 23:27:08 +0200

author
Michiel Broek <mbroek@mbse.eu>
date
Fri, 25 Jul 2014 23:27:08 +0200
changeset 134
f05601490415
child 136
264e5ee5abfc
permissions
-rw-r--r--

Redesigned the web interface, one single app is too slow. The main dashboard will be a shiny ajax driven page, the setup pages will be simple and php only. Keep It Simple, Stupid.

<?php
/*****************************************************************************
 * Copyright (C) 2014
 *   
 * Michiel Broek <mbroek at mbse dot eu>
 *
 * This file is part of ThermFerm
 *
 * This is free software; you can redistribute it and/or modify it
 * under the terms of the GNU General Public License as published by the
 * Free Software Foundation; either version 2, or (at your option) any
 * later version.
 *
 * ThermFerm 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
 * General Public License for more details.
 * 
 * You should have received a copy of the GNU General Public License
 * along with ThermFerm; see the file COPYING.  If not, write to the Free
 * Software Foundation, 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
 *****************************************************************************/

require_once('utilities.php');

profile_admin();
exit;


function profile_admin() {
    if (isset($_GET['action'])) {
	switch ($_GET['action']) {
	    default:		break;
	}
    } elseif (isset($_POST['action'])) {
	switch ($_POST['action']) {
	    default:		break;
	}
    } else {
	profile_list();
    }
}



function profile_add() {
    $cmd = "ADD PROFILE ".$_GET['Name'];

    $sock = open_socket();
    if ($sock != false) {
	/*
	 * Send command and absorb the result.
	 */
	socket_write($sock, $update_cmd, 4096);
	while (1) {
	    $line = socket_read($sock, 4096);
	    if ($line === '')
		break;
	}
	socket_close($sock);
    }
}



function profile_update() {
    /*
     * Build the update command
     */
    $update_cmd = "PROFILE ".$_GET['UUID'].",".$_GET['Name'];

    $sock = open_socket();
    if ($sock != false) {
    	/*
    	 * Send command and absorb the result.
    	 */
    	socket_write($sock, $update_cmd, 4096);
    	while (1) {
	    $line = socket_read($sock, 4096);
	    if ($line === '')
	    	break;
    	}
    	socket_close($sock);
    }
}



function profile_list() {
	
    $sock = open_socket();
    if ($sock == false) {
    	echo "";
    	return;
    }

    socket_write($sock, "LIST PROFILES", 4096);
    $answer = "";
    while (1) {
    	$line = socket_read($sock, 4096);
    	if ($line === '')
	    break;
    	$answer .= $line;
    }
    socket_close($sock);
    $arr = explode("\r\n", $answer);

    $outstr  = build_header();

    $outstr .= '    <div id="errors">'.PHP_EOL;
    $outstr .= '    </div> <!-- errors -->'.PHP_EOL;

    $outstr .= '    <div id="etable">'.PHP_EOL;
    $outstr .= '     <table class="setup">'.PHP_EOL;
    $outstr .= '      <tr style="background-color: #FFCC01;"><td class="setup">UUID</td><td class="setup">Name</td><td class="setup">Steps</td><td class="setup">spare</td></tr>'.PHP_EOL;

    if (startsWith($arr[0], "212")) {
    	$j = 1;
    	while (1) {
	    if (strcmp($arr[$j], ".") == 0)
	    	break;
	    $f = explode(",", $arr[$j]);
	    $outstr .= '      <tr class="setup"><td class="setup">'.$f[0].'</td><td class="setup">'.$f[1].'</td><td class="setup">'.$f[2].'</td><td class="setup">bla</td></tr>'.PHP_EOL;
	    $j++;
    	}
    }

    $outstr .= '     </table>'.PHP_EOL;
    $outstr .= '    </div> <!-- etable -->'.PHP_EOL;
    $outstr .= build_footer();
    echo $outstr;
}

mercurial