#!/usr/bin/php
<?php

/// init
	global $ini;
	global $node;

	require(dirname(__FILE__)."/../include/functions.php");
	init(1);

### Parse command line args

	$cliname='';
	$domname='';
	if (count($argv)>1)
	{
		$clidomname=$argv[1];

		$csql="SELECT id FROM client WHERE name='$clidomname';";
		$cres=DBquery($csql);
		if($cres->num_rows>0)
		{
			$cliname=$clidomname;
		}
		else
		{
			$domname=$clidomname;
		}
	}


### Collect mailboxes per client

	$sql="SELECT
			(dom_host.active=1 AND domain.active=1 AND client.active=1) AS active,
			dom_host.host AS hostname,
			IFNULL(domain.name, '???') AS domname,
			IF(dom_host.mx IS NULL, 1, 0) AS localmx,
			IFNULL(dom_host.mx, '') AS mx,
			IFNULL(dom_host.ip, '') AS ip

		FROM dom_host
			LEFT JOIN domain ON dom_host.domainid=domain.id
			LEFT JOIN client ON domain.clientid=client.id

		WHERE 1

	";

	if ($cliname)
	{
		$sql.="
		AND `client`.`name`='$cliname'
			";
	}

	if ($domname!='')
	{
		$sql.="
		AND `domain`.`name`='$domname'
			";
	}

	$sql.="
		ORDER BY `client`.`name`, `domain`.`name`, `dom_host`.`host`
	;";


	$res=DBquery($sql);

	$S=';';

	while ($row=$res->fetch_assoc()) {

		// CSV mezők: domainnév;aldomain;levelezés_aktív;[elsődleges_ip];[mx1,...]
		// CSV info: levelezés_aktív:1/0

		if (!$row['active']) { echo "<INAKTIV>"; }

		echo $row['domname'].$S;
		echo $row['hostname'].$S;
		echo $row['localmx'].$S;
		echo $row['ip'].$S;

		$mx_clean=str_replace(array("\r", "\t"), '', $row['mx']);
		$mxarr=explode("\n",$mx_clean);
		echo implode(',', $mxarr);

		echo "\n";
	}

DBclose();
