const calculateDaysSince = (dateStr) => {
    if (!dateStr) return 1; // Default to 1 day if date missing

    // Use timestamps to calculate difference
    const start = new Date(dateStr).getTime();
    const now = new Date().getTime();

    if (isNaN(start)) return 1;

    const diffTime = Math.abs(now - start);
    const diffDays = Math.ceil(diffTime / (1000 * 60 * 60 * 24));

    return diffDays || 1; // Return 1 even if diffDays is 0 (just joined)
};

const getPlantAgeBadge = (days) => {
    if (days <= 15) return { icon: '🌱', title: '职场萌新', desc: '还在适应新家的光照和水土，随时可能“离职”。' };
    if (days <= 60) return { icon: '🌿', title: '正式员工', desc: '已经度过了缓苗期，冒出了第一片新叶。' };
    if (days <= 180) return { icon: '🪴', title: '资深住户', desc: '经历了季节交替的考验，已经完全融入了你的家居环境。' };
    if (days <= 365) return { icon: '🌳', title: '元老级导师', desc: '跨越了冬夏两季，生命力顽强，建议作为传家宝培养。' };
    if (days <= 1095) return { icon: '🏅', title: '荣誉守护神', desc: '它已经不是植物了，是这个家的“不动产”和家庭成员。' };
    return { icon: '🧚‍♀️', title: '植物成精', desc: '建议尊称它一声“绿植大仙”，它可能比你更了解阳台的风水。' };
};

module.exports = {
    calculateDaysSince,
    getPlantAgeBadge
};
