Changed Vertiflo to Veriflo
This commit is contained in:
parent
bb43aed936
commit
e74fbd8948
23
.env.example
23
.env.example
@ -1,12 +1,13 @@
|
||||
PORT=3000
|
||||
VERTIFLO_DASHBOARD_ORIGIN="http://localhost:5174"
|
||||
VERTIFLO_ENABLE_WHATSAPP_CLIENT=true
|
||||
VERTIFLO_MESSAGE_TEMPLATE_MAX_CHARS=320
|
||||
VERTIFLO_SANDBOX_MONTHLY_MESSAGE_LIMIT=500
|
||||
VERTIFLO_LIVE_MONTHLY_MESSAGE_LIMIT=100
|
||||
VERTIFLO_SANDBOX_INTEGRATION_QUOTA_UNITS=1
|
||||
VERTIFLO_UPI_ID="your-upi-id@bank"
|
||||
VERTIFLO_UPI_NAME="Veriflo"
|
||||
VERTIFLO_SUPERADMIN_EMAIL="superadmin@veriflo.local"
|
||||
VERTIFLO_SUPERADMIN_PASSWORD="SuperAdmin@123"
|
||||
VERTIFLO_SUPERADMIN_NAME="Super Admin"
|
||||
VERIFLO_DASHBOARD_ORIGIN="http://localhost:5174"
|
||||
VERIFLO_ENABLE_WHATSAPP_CLIENT=true
|
||||
VERIFLO_MESSAGE_TEMPLATE_MAX_CHARS=320
|
||||
VERIFLO_SANDBOX_MONTHLY_MESSAGE_LIMIT=500
|
||||
VERIFLO_LIVE_MONTHLY_MESSAGE_LIMIT=100
|
||||
VERIFLO_SANDBOX_INTEGRATION_QUOTA_UNITS=1
|
||||
VERIFLO_UPI_ID="your-upi-id@bank"
|
||||
VERIFLO_UPI_NAME="Veriflo"
|
||||
VERIFLO_SUPERADMIN_EMAIL="superadmin@veriflo.local"
|
||||
VERIFLO_SUPERADMIN_PASSWORD="SuperAdmin@123"
|
||||
VERIFLO_SUPERADMIN_NAME="Super Admin"
|
||||
|
||||
|
||||
BIN
database.sqlite
BIN
database.sqlite
Binary file not shown.
Binary file not shown.
Binary file not shown.
7
index.js
7
index.js
@ -12,8 +12,8 @@ loadEnvFile();
|
||||
|
||||
const app = express();
|
||||
const PORT = process.env.PORT || 3000;
|
||||
const dashboardOrigin = process.env.VERTIFLO_DASHBOARD_ORIGIN || 'http://localhost:5174';
|
||||
const whatsappEnabled = process.env.VERTIFLO_ENABLE_WHATSAPP_CLIENT !== 'false';
|
||||
const dashboardOrigin = process.env.VERIFLO_DASHBOARD_ORIGIN || 'http://localhost:5174';
|
||||
const whatsappEnabled = process.env.VERIFLO_ENABLE_WHATSAPP_CLIENT !== 'false';
|
||||
|
||||
// Initialize SQLite Schema
|
||||
initSchema();
|
||||
@ -106,7 +106,7 @@ if (whatsappEnabled) {
|
||||
app.locals.waClient = client;
|
||||
} else {
|
||||
app.locals.waInitError = 'WhatsApp client disabled by configuration.';
|
||||
console.log('WhatsApp client initialization skipped because VERTIFLO_ENABLE_WHATSAPP_CLIENT=false');
|
||||
console.log('WhatsApp client initialization skipped because VERIFLO_ENABLE_WHATSAPP_CLIENT=false');
|
||||
}
|
||||
|
||||
// --- Express Routes ---
|
||||
@ -142,3 +142,4 @@ app.post("/send", async (req, res) => {
|
||||
app.listen(PORT, () => {
|
||||
console.log(`Veriflo API server running on http://localhost:${PORT}`);
|
||||
});
|
||||
|
||||
|
||||
11
src/db.js
11
src/db.js
@ -217,15 +217,15 @@ function initSchema() {
|
||||
INSERT INTO payment_config (id, payments_enabled, upi_id, upi_name, payment_note)
|
||||
VALUES (1, 1, ?, ?, ?)
|
||||
`).run(
|
||||
(process.env.VERTIFLO_UPI_ID || '').trim(),
|
||||
process.env.VERTIFLO_UPI_NAME || 'Veriflo',
|
||||
(process.env.VERIFLO_UPI_ID || '').trim(),
|
||||
process.env.VERIFLO_UPI_NAME || 'Veriflo',
|
||||
'Pay via UPI and submit UTR for admin approval.'
|
||||
);
|
||||
}
|
||||
|
||||
const superAdminEmail = (process.env.VERTIFLO_SUPERADMIN_EMAIL || 'superadmin@veriflo.local').trim().toLowerCase();
|
||||
const superAdminPassword = process.env.VERTIFLO_SUPERADMIN_PASSWORD || 'SuperAdmin@123';
|
||||
const superAdminName = process.env.VERTIFLO_SUPERADMIN_NAME || 'Super Admin';
|
||||
const superAdminEmail = (process.env.VERIFLO_SUPERADMIN_EMAIL || 'superadmin@veriflo.local').trim().toLowerCase();
|
||||
const superAdminPassword = process.env.VERIFLO_SUPERADMIN_PASSWORD || 'SuperAdmin@123';
|
||||
const superAdminName = process.env.VERIFLO_SUPERADMIN_NAME || 'Super Admin';
|
||||
const existingAdmin = db.prepare('SELECT id FROM users WHERE email = ?').get(superAdminEmail);
|
||||
if (!existingAdmin) {
|
||||
const hash = bcrypt.hashSync(superAdminPassword, 10);
|
||||
@ -247,3 +247,4 @@ module.exports = {
|
||||
db,
|
||||
initSchema
|
||||
};
|
||||
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
const jwt = require('jsonwebtoken');
|
||||
|
||||
// Hardcoded for development, should be env var in production
|
||||
const JWT_SECRET = process.env.JWT_SECRET || 'vertiflo_super_secret_key_2026';
|
||||
const JWT_SECRET = process.env.JWT_SECRET || 'veriflo_super_secret_key_2026';
|
||||
|
||||
function generateToken(user, expiresIn = '7d') {
|
||||
return jwt.sign(
|
||||
@ -33,3 +33,4 @@ module.exports = {
|
||||
generateToken,
|
||||
verifyToken
|
||||
};
|
||||
|
||||
|
||||
@ -21,8 +21,8 @@ const {
|
||||
const { resolveWhatsAppChatId } = require('../utils/whatsapp');
|
||||
|
||||
const router = express.Router();
|
||||
const TEST_OTP_USER_PER_MIN = Number(process.env.VERTIFLO_TEST_OTP_USER_PER_MIN || 8);
|
||||
const TEST_OTP_IP_PER_MIN = Number(process.env.VERTIFLO_TEST_OTP_IP_PER_MIN || 20);
|
||||
const TEST_OTP_USER_PER_MIN = Number(process.env.VERIFLO_TEST_OTP_USER_PER_MIN || 8);
|
||||
const TEST_OTP_IP_PER_MIN = Number(process.env.VERIFLO_TEST_OTP_IP_PER_MIN || 20);
|
||||
|
||||
function getRateLimitIpKey(req) {
|
||||
return ipKeyGenerator(req.ip || req.socket?.remoteAddress || '0.0.0.0');
|
||||
@ -132,8 +132,8 @@ router.post('/billing/payment-request', verifyToken, (req, res) => {
|
||||
WHERE id = 1
|
||||
`).get();
|
||||
const paymentsEnabled = Number(paymentConfig?.payments_enabled || 0) === 1;
|
||||
const upiId = String(paymentConfig?.upi_id || process.env.VERTIFLO_UPI_ID || '').trim();
|
||||
const payeeName = encodeURIComponent(paymentConfig?.upi_name || process.env.VERTIFLO_UPI_NAME || 'Veriflo');
|
||||
const upiId = String(paymentConfig?.upi_id || process.env.VERIFLO_UPI_ID || '').trim();
|
||||
const payeeName = encodeURIComponent(paymentConfig?.upi_name || process.env.VERIFLO_UPI_NAME || 'Veriflo');
|
||||
|
||||
if (!paymentsEnabled) {
|
||||
return res.status(503).json({ error: 'Payments are currently disabled. Please contact admin.' });
|
||||
@ -184,13 +184,13 @@ router.get('/billing/config', verifyToken, (req, res) => {
|
||||
WHERE id = 1
|
||||
`).get();
|
||||
|
||||
const upiId = String(paymentConfig?.upi_id || process.env.VERTIFLO_UPI_ID || '').trim();
|
||||
const upiId = String(paymentConfig?.upi_id || process.env.VERIFLO_UPI_ID || '').trim();
|
||||
|
||||
return res.json({
|
||||
config: {
|
||||
payments_enabled: Number(paymentConfig?.payments_enabled || 0) === 1,
|
||||
upi_available: Boolean(upiId),
|
||||
upi_name: paymentConfig?.upi_name || process.env.VERTIFLO_UPI_NAME || 'Veriflo',
|
||||
upi_name: paymentConfig?.upi_name || process.env.VERIFLO_UPI_NAME || 'Veriflo',
|
||||
payment_note: paymentConfig?.payment_note || 'Pay via UPI and submit UTR for admin approval.'
|
||||
}
|
||||
});
|
||||
@ -669,3 +669,4 @@ router.post('/test-webhook', verifyToken, async (req, res) => {
|
||||
});
|
||||
|
||||
module.exports = router;
|
||||
|
||||
|
||||
@ -7,7 +7,7 @@ This code expires in {expiry_seconds} seconds. Do not share it.`;
|
||||
const ALLOWED_VARIABLES = ['greeting', 'sender_name', 'otp', 'expiry_seconds'];
|
||||
|
||||
function getTemplateMaxChars() {
|
||||
const value = Number(process.env.VERTIFLO_MESSAGE_TEMPLATE_MAX_CHARS || 320);
|
||||
const value = Number(process.env.VERIFLO_MESSAGE_TEMPLATE_MAX_CHARS || 320);
|
||||
return Number.isFinite(value) && value > 0 ? value : 320;
|
||||
}
|
||||
|
||||
@ -56,3 +56,4 @@ module.exports = {
|
||||
renderMessageTemplate,
|
||||
validateMessageTemplate
|
||||
};
|
||||
|
||||
|
||||
@ -1,12 +1,12 @@
|
||||
const { db } = require('../db');
|
||||
|
||||
function getSandboxMonthlyMessageLimit() {
|
||||
const value = Number(process.env.VERTIFLO_SANDBOX_MONTHLY_MESSAGE_LIMIT || 500);
|
||||
const value = Number(process.env.VERIFLO_SANDBOX_MONTHLY_MESSAGE_LIMIT || 500);
|
||||
return Number.isFinite(value) && value > 0 ? value : 500;
|
||||
}
|
||||
|
||||
function getLiveMonthlyMessageLimit() {
|
||||
const value = Number(process.env.VERTIFLO_LIVE_MONTHLY_MESSAGE_LIMIT || 100);
|
||||
const value = Number(process.env.VERIFLO_LIVE_MONTHLY_MESSAGE_LIMIT || 100);
|
||||
return Number.isFinite(value) && value > 0 ? value : 100;
|
||||
}
|
||||
|
||||
@ -74,3 +74,4 @@ module.exports = {
|
||||
getSandboxUsageThisMonth,
|
||||
getLiveUsageThisMonth
|
||||
};
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user