<?php

use danog\MadelineProto\API;
use danog\MadelineProto\Settings;
use danog\MadelineProto\Settings\AppInfo;

if (!file_exists('madeline.php')) {
    copy('https://phar.madelineproto.xyz/madeline.php', 'madeline.php');
}
include 'madeline.php';
include 'database.php';


$number = $argv[1];
$group = $argv[2];

$database = new DataBase();
$database->newtable('utenti_gruppi', '`id` INT NOT NULL AUTO_INCREMENT , `not_possible_add` BOOLEAN NOT NULL, `first_name` VARCHAR(64) NOT NULL ,`username` VARCHAR(64) NOT NULL ,`type` VARCHAR(64) NOT NULL , `chat_id` VARCHAR(64) NOT NULL , `restricted` BOOLEAN NOT NULL , `role` VARCHAR(64) NOT NULL , PRIMARY KEY (`id`)');

$MadelineProto = new API("sessions/$number.madeline");

$MadelineProto->channels->joinChannel(channel: $group);

$pwr_chat = $MadelineProto->getPwrChat($group);
foreach ($pwr_chat['participants'] as $participant) { 

    if($database->checkuser($participant['user']['id'])){

        $a = $participant['user']['restricted'] ? "1" : "0";

        if($participant['user'] && isset($participant['user']['username'])){
            $username = $participant['user']['username'];
        }else{
            $username = '';
        }

        if($participant['user'] && isset($participant['user']['first_name'])){
            $first_name = $participant['user']['first_name'];
            $first_name = str_replace("'", "", $first_name);
        }else{
            $first_name = '';
        }
        $database->insert('utenti_gruppi', 'chat_id, first_name, username, type, restricted, role, not_possible_add', "'".$participant['user']['id']."', '". $first_name."', '".$username."','".$participant['user']['type']."', '".$a."','".$participant['role']."', '0'");
    }

    echo $participant['user']['id']."\n";
}

$MadelineProto->channels->leaveChannel(channel: $group);