<?php
/**
 *  Copyright (C) 2021  Double Bastion LLC
 *
 *  This file is part of Roundpin, which is licensed under the
 *  GNU Affero General Public License Version 3.0. The license terms
 *  are detailed in the "LICENSE.txt" file located in the root directory.
 */

session_start();
 // header('Set-Cookie: PHPSESSID= ' . session_id() . '; SameSite=strict; Secure=true; HttpOnly=true;');

if (isset($_POST['s_ajax_call']) && ($_POST['s_ajax_call'] == $_SESSION['validate_s_access']) && isset($_POST['currentvconfext']) && $_POST['currentvconfext'] != '' &&
    isset($_POST['currentvconfpubkey']) && $_POST['currentvconfpubkey'] != '' && isset($_POST['currentvconfprivkey']) && $_POST['currentvconfprivkey'] != '') {

       $vconfExtension = $_POST['currentvconfext'];
       $chatPubKey = $_POST['currentvconfpubkey'];
       $chatPrivKey = $_POST['currentvconfprivkey'];

       // Create the necessary directory if it doesn't exist
       if (!is_dir('../textchat/' . $vconfExtension)) {
            mkdir('../textchat/' . $vconfExtension, 0700);
       }

       // Save the RSA keys
       if ($vconfExtension != '') {

           if (!file_exists('../textchat/' . $vconfExtension . '/rsa_1024_pub.pem') || !file_exists('../textchat/' . $vconfExtension . '/rsa_1024_priv.pem')) {

	        $savePubKey = file_put_contents('../textchat/' . $vconfExtension . '/rsa_1024_pub.pem', $chatPubKey);
		chmod('../textchat/' . $vconfExtension . '/rsa_1024_pub.pem', 0600);

		$savePrivKey = file_put_contents('../textchat/' . $vconfExtension . '/rsa_1024_priv.pem', $chatPrivKey);
		chmod('../textchat/' . $vconfExtension . '/rsa_1024_priv.pem', 0400);

		$messageres = 'success';

           } else { $messageres = 'success'; }

       } else { 
             $messageres = 'failure';
       }

       $generateresp = ['messageres' => $messageres];

       echo json_encode($generateresp);

} else {
    header("Location: ../login.php");
}

?>
