donation/app/Views/business_form.php
bitbucket c7ae64c6aa ss
2024-02-19 16:06:01 +05:30

495 lines
30 KiB
PHP

<html>
<head>
</head>
<style>
/* CSS for the preview image */
.preview-image {
display: block;
/* Ensure the image is displayed as a block element */
width: 120px;
/* Set the desired width for passport size */
height: 160px;
/* Set the desired height for passport size */
object-fit: cover;
/* Maintain the aspect ratio and fill the container */
margin-top: 10px;
/* Add a top margin for spacing */
}
.toggle-icon {
cursor: pointer;
margin-left: 5px;
}
</style>
<div class="row">
<div class="col-lg-12">
<div class="card">
<div class="card-body">
<h4 class="header-title"><?= $page_name; ?></h4>
<p class="sub-header"> </p>
<form class="needs-validation" novalidate method="POST" enctype="multipart/form-data" action="<?= base_url() . "insert_org"; ?>" id="myForm">
<hr />
<h4 class="header-title" id="org-settings-title">
Organization Settings
<span class="toggle-icon" onclick="toggleSettings('org-settings')">▼</span>
</h4>
<br>
<div>
<div class="form-group" id="org-settings">
<div class="form-row">
<div class="form-group col-md-6">
<label for="bname" class="col-form-label">Organization Name<span class="text-danger">*</span></label>
<input type="text" class="form-control" id="bname" name="bname" value="<?= isset($businesses['title']) ? $businesses['title'] : '' ?>" placeholder="Organization Name" required />
<div class="invalid-feedback"> Please provide. </div>
</div>
<div class="form-group col-md-6">
<label for="bmail" class="col-form-label">Organization Email<span class="text-danger">*</span></label>
<input type="email" class="form-control" name="bmail" value="<?= isset($businesses['email']) ? $businesses['email'] : '' ?>" placeholder="Email" required />
<div class="invalid-feedback"> Please provide. </div>
</div>
</div>
<div class="form-row">
<div class="form-group col-md-6">
<label for="bmobile" class="col-form-label">Organization PAN Number<span class="text-danger">*</span></label>
<input type="text" class="form-control" name="pan_no" value="<?= isset($businesses['pan_no']) ? $businesses['pan_no'] : '' ?>" placeholder="PAN Number" required pattern="[A-Z]{5}[0-9]{4}[A-Z]{1}" title="Enter a valid PAN number" />
<div class="invalid-feedback"> Please provide. </div>
</div>
<div class="form-group col-md-6">
<label for="baddress" class="col-form-label">Organization Reg Number<span class="text-danger">*</span></label>
<input type="text" class="form-control" name="org_reg_no" value="<?= isset($businesses['org_reg_no']) ? $businesses['org_reg_no'] : '' ?>" placeholder="Organization Register Number" required />
<div class="invalid-feedback"> Please provide. </div>
</div>
</div>
<div class="form-row">
<div class="form-group col-md-4">
<label for="bmobile" class="col-form-label">Organization Mobile Number<span class="text-danger">*</span></label>
<input type="tel" class="form-control" name="bmobile" value="<?= isset($businesses['mobile_no']) ? $businesses['mobile_no'] : '' ?>" placeholder="Mobile Number (Enter only numbers)" required pattern="\d{10}" title="Please enter a 10-digit mobile number" oninput="this.value = this.value.replace(/[^0-9]/g, '')" maxlength="10" />
<div class="invalid-feedback"> Please provide. </div>
</div>
<div class="form-group col-md-4">
<label for="baddress" class="col-form-label">Organization Address<span class="text-danger">*</span></label>
<input type="text" class="form-control" name="baddress" value="<?= isset($businesses['address']) ? $businesses['address'] : '' ?>" placeholder="Address (eg : 1234 Main St)" required />
<div class="invalid-feedback"> Please provide. </div>
</div>
<?php if (isset($businesses['loged_user'])) { ?>
<div class="form-group col-md-4">
<label for="baddress" class="col-form-label">80G</label>
<input type="text" class="form-control" name="80G" value="<?= isset($businesses['80G']) ? $businesses['80G'] : '' ?>" placeholder="80G Tax Free" />
</div>
<?php } ?>
</div>
<div class="form-row">
<div class="form-group col-md-4">
<label for="bcity" class="col-form-label">City<span class="text-danger">*</span></label>
<input type="text" class="form-control" name="bcity" value="<?= isset($businesses['city']) ? $businesses['city'] : '' ?>" placeholder="City" required pattern="[A-Za-z\s]+" title="Please enter alphabets only" />
<div class="invalid-feedback"> Please provide. </div>
</div>
<div class="form-group col-md-4">
<label for="bstate" class="col-form-label">State<span class="text-danger">*</span></label>
<input type="text" class="form-control" name="bstate" value="<?= isset($businesses['state']) ? $businesses['state'] : '' ?>" placeholder="State" required pattern="[A-Za-z\s]+" title="Please enter alphabets only" />
<div class="invalid-feedback"> Please provide. </div>
</div>
<div class="form-group col-md-4">
<label for="bzip" class="col-form-label">Postal Code<span class="text-danger">*</span></label>
<input type="text" class="form-control" name="bzip" value="<?= isset($businesses['postal_code']) ? $businesses['postal_code'] : '' ?>" placeholder="Postal Code (Eg: Pincode)" oninput="this.value = this.value.replace(/[^0-9]/g, '')" required />
<div class="invalid-feedback"> Please provide. </div>
</div>
</div>
</div>
<!-- Existing form fields above this section -->
<!-- ################################################################################################# -->
<hr />
<h4 class="header-title" id="site-settings-title">
Site Settings
<span class="toggle-icon" onclick="toggleSettings('site-settings')">▼</span>
</h4>
<br>
<div class="form-group" id="site-settings" style="display: none;">
<div class="form-row">
<div class="form-group col-md-12" style="display:none;">
<label for="postal_code" class="col-form-label">Organization</label>
<select id="business_id" name="business_id" class="form-control">
<option value="null"><?php if(!isset($details['business_id'])){ echo 'Choose Organization'; } ?></option>
<?php foreach ($business_details as $value) { ?>
<option value="<?php echo $value['business_id']; ?>"
<?php if (isset($details['business_id']) && ($details['business_id'] === $value['business_id'])) echo "selected"; ?>>
<?php echo $value['title']; ?></option>
<?php } ?>
</select>
</div>
</div>
<div class="form-row">
<div class="form-group col-md-6">
<label for="site_name" class="col-form-label">Site Name</label>
<input type="text" class="form-control" id="site_name" name="site_name"
value="<?= isset($details['site_name']) ? $details['site_name'] : '' ?>"
placeholder="Site Name" />
</div>
<div class="form-group col-md-6">
<label for="site_title" class="col-form-label">Site Title</label>
<input type="text" class="form-control" id="site_title" name="site_title"
placeholder="Site Title"
value="<?= isset($details['site_title']) ? $details['site_title'] : '' ?>" />
</div>
</div>
<div class="form-row">
<div class="form-group col-md-6">
<label for="admin_email" class="col-form-label">Admin Email</label>
<input type="email" class="form-control" id="admin_email" name="admin_email"
placeholder="Admin Email"
value="<?= isset($details['admin_email']) ? $details['admin_email'] : '' ?>" />
</div>
<div class="form-group col-md-6">
<label for="mobile" class="col-form-label">Mobile Number</label>
<input type="text" class="form-control" id="mobile" name="mobile"
placeholder="Mobile Number (Enter only numbers)" data-parsley-type="number"
value="<?= isset($details['mobile']) ? $details['mobile'] : '' ?>" pattern="\d{10}" title="Please enter a 10-digit mobile number" maxlength="10" />
</div>
</div>
<div class="form-row">
<div class="form-group col-md-6">
<label for="copyright" class="col-form-label">Copyright</label>
<input type="text" class="form-control" id="copyright" name="copyright"
placeholder="Copy Right"
value="<?= isset($details['copyright']) ? $details['copyright'] : '' ?>" />
</div>
<div class="form-group col-md-6">
<label for="pagination_limit" class="col-form-label">Pagination Limit</label>
<input type="text" class="form-control" id="pagination_limit" name="pagination_limit"
placeholder="Pagination Limit"
value="<?= isset($details['pagination_limit']) ? $details['pagination_limit'] : '' ?>" />
</div>
</div>
<div class="form-row">
<div class="form-group col-md-6">
<label for="currency" class="col-form-label">Currency</label>
<input type="text" class="form-control" id="currency" name="currency"
placeholder="currency (eg : Rupees,Dollar,Euro)"
value="<?= isset($details['currency']) ? $details['currency'] : '' ?>" />
</div>
<div class="form-group col-md-6">
<label for="country" class="col-form-label">Country</label>
<input type="text" class="form-control" id="country" name="country"
placeholder="Country"
value="<?= isset($details['country']) ? $details['country'] : '' ?>" />
</div>
</div>
</div>
<!-- ################################################################################################# -->
<hr />
<h4 class="header-title" id="branch-settings-title">
Branch Settings
<span class="toggle-icon" onclick="toggleSettings('branch-settings')">▼</span>
</h4>
<br>
<div class="after-shipping-addr-add-more" id="branch-settings" style="display: none;">
<?php if (empty($branches)) : ?>
<!-- Display at least one set of branch fields when the array is empty -->
<div class="form-group">
<div class="form-row">
<div class="form-group col-md-6">
<label for="branchname" class="col-form-label">Branch Name<span class="text-danger"> </span></label>
<input type="text" class="form-control" id="branchname" name="branchname[]" placeholder="Branch Name"required />
<div class="invalid-feedback"> Please provide. </div>
</div>
<div class="form-group col-md-6">
<label for="branchaddress" class="col-form-label">Branch Address<span class="text-danger"></span></label>
<input type="text" class="form-control" id="branchaddress" name="branchaddress[]" placeholder="Address (eg : 1234 Main St)"required />
<div class="invalid-feedback"> Please provide. </div>
</div>
</div>
<div class="form-row">
<div class="form-group col-md-6">
<label for="mobile_no" class="col-form-label">Contact Person<span class="text-danger"></span></label>
<input type="number" class="form-control" id="mobile_no" name="mobile_no[]" placeholder="Contact Person"required data-parsley-type="number" maxlength="10" />
<div class="invalid-feedback"> Please provide. </div>
</div>
<div class="form-group col-md-6">
<label for="email" class="col-form-label">Email<span class="text-danger"></span></label>
<input type="text" class="form-control" id="email" name="email[]" placeholder="Email" required/>
<div class="invalid-feedback"> Please provide. </div>
</div>
</div>
<!-- Add hidden input for branch id -->
<input type="hidden" name="id[]" />
</div>
<?php else : ?>
<!-- Display branch fields for each branch in the $branches array -->
<?php foreach ($branches as $branch) : ?>
<div class="form-group">
<div class="form-row">
<div class="form-group col-md-6">
<label for="branchname" class="col-form-label">Branch Name<span class="text-danger"></span></label>
<input type="text" class="form-control" id="branchname" name="branchname[]" value="<?= isset($branch['branch_name']) ? $branch['branch_name'] : '' ?>" placeholder="Branch Name"required />
<div class="invalid-feedback"> Please provide. </div>
</div>
<div class="form-group col-md-6">
<label for="branchaddress" class="col-form-label">Branch Address<span class="text-danger"> </span></label>
<input type="text" class="form-control" id="branchaddress" name="branchaddress[]" value="<?= isset($branch['address']) ? $branch['address'] : '' ?>" placeholder="Address (eg : 1234 Main St)" required />
<div class="invalid-feedback"> Please provide. </div>
</div>
</div>
<div class="form-row">
<div class="form-group col-md-6">
<label for="mobile_no" class="col-form-label">Contact Person<span class="text-danger"> </span></label>
<input type="text" class="form-control" id="mobile_no" name="mobile_no[]" value="<?= isset($branch['mobile_no']) ? $branch['mobile_no'] : '' ?>" placeholder="Contact Person" required data-parsley-type="number" maxlength="10" />
<div class="invalid-feedback"> Please provide. </div>
</div>
<div class="form-group col-md-6">
<label for="email" class="col-form-label">Email<span class="text-danger"></span></label>
<input type="email" class="form-control" id="email" name="email[]" value="<?= isset($branch['email']) ? $branch['email'] : '' ?>" placeholder="Email"required/>
<div class="invalid-feedback"> Please provide. </div>
</div>
</div>
<!-- Add hidden input for branch id -->
<input type="hidden" name="id[]" value="<?= isset($branch['id']) ? $branch['id'] : '' ?>" />
</div>
<hr />
<?php endforeach; ?>
<?php endif; ?>
<!-- Add more branches when clicking the "Add More Branches" button -->
<div class="form-group col-md-12 text-right m-b-0">
<a class="btn btn-success waves-effect waves-light mr-1 add-brnach-details">+ Add More Branches </a>
<a class="btn btn-danger waves-effect waves-light mr-1 remove-brnach-details">- Remove </a>
</div>
</div>
<!-- Remaining form fields below this section -->
<!-- Add more branches when clicking the "Add More Branches" button -->
<!-- <div class="form-group col-md-12 text-right m-b-0">
<a class="btn btn-success waves-effect waves-light mr-1 add-brnach-details">+ Add More Branches </a>
<a class="btn btn-danger waves-effect waves-light mr-1 remove-brnach-details">- Remove </a>
</div>
</div> -->
</div>
<!-- ############################################################################################### -->
<hr />
<h4 class="header-title" id="logo-settings-title">
Logo Settings
<span class="toggle-icon" onclick="toggleSettings('logo-settings')">▼</span>
</h4>
<br>
<div class="form-group" id="logo-settings" style="display: none;">
<div class="form-row">
<div class="form-group col-md-6">
<label for="logo" class="col-form-label">Maximise Logo</label>
<input type="file" class="form-control" style="border: 0px !important; " id="logo"
name="slogo" placeholder="Logo Name" accept=".png, .jpg, .jpeg"
value="<?= isset($details['logo']) ? $details['logo'] : '' ?>" />
</div>
<?php if (!empty($details['logo'])) { ?>
<div class="form-group col-md-6">
<label for="slogo" class="col-form-label"> Logo</label>
<img src="<?= base_url('public/uploads/'. $details['logo']) ?>" alt="Logo"
class="preview-image" />
</div>
<?php } ?>
<div class="form-group col-md-6">
<label for="favicon" class="col-form-label">Favicon</label>
<input type="file" class="form-control" style="border: 0px !important; " id="favic"
name="favicon" placeholder="Fav-icon Name" accept=".png, .jpg, .jpeg"
value="<?= isset($details['favicon']) ? $details['favicon'] : '' ?>" />
</div>
<?php if (!empty($details['favicon'])) { ?>
<div class="form-group col-md-6">
<label for="favicon" class="col-form-label">Icon</label>
<img src="<?= base_url('public/uploads/'. $details['favicon']) ?>" alt="Icon"
class="preview-image" />
</div>
<?php } ?>
</div>
<div class="form-row">
<div class="form-group col-md-6">
<label for="bfile" class="col-form-label">Minimise Logo</label>
<input type="file" class="form-control" style="border: 0px !important;" id="bfile" name="bfile" value="<?= isset($businesses['business_logo']) ? $businesses['business_logo'] : null ?>" accept=".jpg, .png, .gif" multiple />
</div>
<?php if (!empty($businesses['business_logo'])) { ?>
<div class="form-group col-md-6">
<label for="bfile" class="col-form-label">Current Organization Logo</label>
<img src="<?= base_url('public/uploads/' . $businesses['business_logo']) ?>" alt="Organization Logo" class="preview-image" />
</div>
<?php } ?>
<div class="form-group col-md-6">
<label for="bfile" class="col-form-label">Signature</label>
<input type="file" onchange="validateImage(this)" class="form-control" style="border: 0px !important;" id="signature" name="signature" value="<?= isset($businesses['signature']) ? $businesses['signature'] : null ?>" multiple />
<p id="error-message"></p>
</div>
<?php if (!empty($businesses['signature'])) { ?>
<div class="form-group col-md-6">
<label for="bfile" class="col-form-label">Current Signature</label>
<img src="<?= base_url('public/uploads/' . $businesses['signature']) ?>" alt="Signature" class="preview-image" />
</div>
<?php } ?>
</div>
<input type="hidden" id="business_id" name="business_id" placeholder="hidden for Organization id" value="<?= isset($businesses['business_id']) ? $businesses['business_id'] : '' ?>" />
<?php if (!empty($businesses) && ($loggedin_person_role === 'sadmin')) { ?>
<div class="form-group text-right m-b-0 checkbox checkbox-purple">
<input type="checkbox" id="bcheckbox" name="bcheckbox" class="form-control" <?= isset($businesses) && $businesses['isactive'] == 1 ? 'checked' : '' ?>>
<label for="bcheckbox"> Is Active</label>
</div>
<br>
<?php } ?>
</div>
<div class="after-add-more">
<hr />
<h4 class="header-title" id="receipt-settings-title">
Receipt Settings
<span class="toggle-icon" onclick="toggleSettings('receipt-settings')">▼</span>
</h4>
<br>
<div class="form-group" id="receipt-settings" style="display: none;">
<div class="form-row">
<div class="form-group col-md-4">
<div>
<label for="bistate" class="col-form-label">Prefix</label>
<input type="text" class="form-control" id="bistate" name="prefix_format" placeholder="Receipt Number Format" value="<?= isset($details['prefix_format']) ? $details['prefix_format'] : ''?>"/>
</div>
</div>
<div class="form-group col-md-4">
<label for="baddress1" class="col-form-label">Left Padding</label>
<input type="text" class="form-control" id="baddress1" name="left_pad" placeholder="Left Padding Number" value="<?= isset($details['left_pad']) ? $details['left_pad'] : '' ?>"/>
</div>
<div class="form-group col-md-4">
<label for="bcity" class="col-form-label">Start Number</label>
<input type="text" class="form-control" id="bcity" name="start_no" value="<?= isset($details['start_no']) ? $details['start_no'] : '1' ?>" placeholder="Start Number" />
</div>
<div class="form-group col-md-12">
<label for="bterms" class="col-form-label">Receipt Note</label>
<textarea class="form-control" id="terms" name="bterms" rows="5" cols="50"><?= isset($businesses['terms']) ? $businesses['terms'] : '' ?></textarea>
</div>
</div>
</div>
</div>
<?php if(!empty($details)){ ?>
<div class="form-group text-right m-b-0 checkbox checkbox-purple">
<input type="checkbox" id="isactive" name="isactive" class="form-control"
<?= isset($details) && $details['isactive'] == 1 ? 'checked' : '' ?>>
<label for="isactive"> Is Active</label>
</div>
<br>
<?php } ?>
<br />
<input type="hidden" id="setting_id" name="setting_id" placeholder="hidden for setting id" value="<?= isset($details['setting_id']) ? $details['setting_id'] : '' ?>" />
<div class="form-group text-right m-b-0">
<button class="btn btn-success waves-effect waves-light mr-1" type="submit" id="submitBtn">Submit</button>
<button type="reset" class="btn btn-primary waves-effect mr-1">Reset</button><a href="<?= base_url() . "org_list"; ?>" class="btn btn-secondary waves-effect">Cancel</a>
</div>
</div>
</form>
</div> <!-- end card-body-->
</div> <!-- end card-->
</div> <!-- end col-->
</div><!-- end row -->
<script>
document.getElementById('myForm').addEventListener('submit', function(event) {
var form = event.target;
if (form.checkValidity() === false) {
form.reportValidity(); // Display validation error messages
event.preventDefault(); // Prevent form submission if it's not valid
$('#submitBtn').prop('disabled', false);
} else {
$('#submitBtn').prop('disabled', true);
}
});
function validateImage(input) {
const errorMessageElement = document.getElementById('error-message');
errorMessageElement.textContent = '';
const image = input.files[0];
// Check image type
const allowedImageTypes = ['image/jpeg', 'image/png', 'image/gif']; // Add more if needed
if (!allowedImageTypes.includes(image.type)) {
errorMessageElement.textContent = 'Invalid image type. Please select a JPEG, PNG, or GIF image.';
return;
}
const maxWidth = 150;
const maxHeight = 100;
const img = new Image();
img.onload = function () {
if (img.width > maxWidth || img.height > maxHeight) {
errorMessageElement.textContent = `Image dimensions should not exceed ${maxWidth}x${maxHeight}.`;
}
};
img.src = URL.createObjectURL(image);
}
</script>
<script>
document.addEventListener('DOMContentLoaded', function () {
function addBranch(container) {
const branchSection = document.querySelector('.after-shipping-addr-add-more');
const clonedBranch = branchSection.cloneNode(true);
// Clear values in the cloned branch
clonedBranch.querySelectorAll('input, textarea').forEach(input => input.value = '');
container.parentNode.insertBefore(clonedBranch, container.nextSibling);
}
// Add more branches when clicking the "Add More Branches" button
document.addEventListener('click', function (event) {
if (event.target.classList.contains('add-brnach-details')) {
event.preventDefault();
const container = event.target.closest('.after-shipping-addr-add-more');
addBranch(container);
}
});
// Remove a branch when clicking the "Remove" button
document.addEventListener('click', function (event) {
if (event.target.classList.contains('remove-brnach-details')) {
event.preventDefault();
event.target.closest('.after-shipping-addr-add-more').remove();
}
});
});
function toggleSettings(id) {
var settingsDiv = document.getElementById(id);
var titleIcon = document.querySelector("#"+id+"-title .toggle-icon");
if (settingsDiv.style.display === "none") {
settingsDiv.style.display = "block";
titleIcon.textContent = "▲"; // Change icon to up arrow
} else {
settingsDiv.style.display = "none";
titleIcon.textContent = "▼"; // Change icon to down arrow
}
}
</script>