Innovations

Battery operated tractor

His father Sanjay Singh is a farmer by profession. In such a situation, looking at the problem of farming, always thought of doing something different.

Dextroware

Innovation in brief Through a series of assistive devices including glasses, finger triggers, foot pedals, and buttons, the user is given facilities similar to a

Thornless Khejri

Technology Rameshwar Lalji is a Khejri expert in Rajasthan and has been researching Khejri for a long time. In every part of Rajasthan, there are

The Clipper (Fruit tree safety holder)

Farmers faced a persistent challenge—trees overloaded with ripening fruits often had their branches snap under pressure, while strong winds, heavy rain, and snowfall further damaged their orchards. This led to significant fruit loss, reducing their overall yield and income.

` : ''; /* * Location / map. * * We first try to find decimal * latitude + longitude in the * database location field. */ const locationValue = practice.location || ''; const coordinates = gridExtractCoordinates( locationValue ); let mapHTML = ''; if(coordinates){ const lat = coordinates.lat; const lng = coordinates.lng; /* * OpenStreetMap embed. * * The marker is directly visible. */ const delta = 0.035; const west = lng - delta; const east = lng + delta; const south = lat - delta; const north = lat + delta; const mapURL = 'https://www.openstreetmap.org/export/embed.html' + '?bbox=' + encodeURIComponent(west) + ',' + encodeURIComponent(south) + ',' + encodeURIComponent(east) + ',' + encodeURIComponent(north) + '&layer=mapnik' + '&marker=' + encodeURIComponent(lat) + ',' + encodeURIComponent(lng); mapHTML = ` `; }else{ mapHTML = `
Location coordinates are not available for this practice.
`; } /* * PAS fields. */ const pasFields = [ ['PAS 1', practice.pas_1], ['PAS 2', practice.pas_2], ['PAS 3', practice.pas_3], ['PAS 4', practice.pas_4], ['PAS 5', practice.pas_5] ]; let pasHTML = ''; pasFields.forEach(function(item){ if( item[1] !== null && item[1] !== undefined && String(item[1]).trim() !== '' ){ pasHTML += `
${gridEscapeHTML( item[0] )}
${gridFormatText( item[1] )}
`; } }); if(!pasHTML){ pasHTML = `
No PAS / resource information available.
`; } /* * Practice fields. */ const practiceFields = [ ['Crop', practice.crop], ['Crop Family', practice.crop_family], [ 'Crop Scientific Name', practice.crop_scientific_name ], [ 'Crop Vernacular Name', practice.crop_vernacular_name ], [ 'Pest Taxonomy', practice.pest_taxonomy ], [ 'Pest Group', practice.pest_group ], [ 'Pest Scientific Name', practice.pest_scientific_names ], [ 'Pest Vernacular Names', practice.pest_vernacular_names ], [ 'Pest Vector Name', practice.pest_vector_name ], [ 'Formulation', practice.formulation ], [ 'Ingredients', practice.ingredients ], [ 'Dosage', practice.dosage ], [ 'Control Mode', practice.control_mode ], [ 'Problem Statement', practice.problem_statement ], [ 'Problem Scale', practice.problem_scale ], [ 'Manufacturing Capacity', practice.manufacturing_capacity ], [ 'Scalability', practice.scalability ], [ 'Potential Users', practice.potential_users ], [ 'Technology Transfer Terms', practice.technology_transfer_terms ], [ 'Scope for Technology Transfer Support', practice.scope_for_technology_transfer_support ], [ 'Limitations', practice.limitations ], [ 'Limitations of Approach', practice.limitations_of_approach ], [ 'Precautions', practice.precautions ] ]; let practiceHTML = ''; practiceFields.forEach(function(item){ if( item[1] !== null && item[1] !== undefined && String(item[1]).trim() !== '' ){ practiceHTML += gridDetailRow( item[0], item[1] ); } }); if(!practiceHTML){ practiceHTML = `
No additional practice details available.
`; } /* * References. */ const referenceFields = [ ['References', practice.references], ['Paper Link 1', practice.paper_link_1], ['Paper Link 2', practice.paper_link_2], ['Paper Link 5', practice.paper_link_5], ['Similar Paper / Patent / Practice', practice.similar_paper_patent_practice], ['Website', practice.website], ['Website Details', practice.website_details], ['Blog Link 1', practice.blog_link_1], ['Blog Link 2', practice.blog_link_2], ['Blog Link 3', practice.blog_link_3], ['Blog Link 5', practice.blog_link_5], ['News Link 1', practice.news_link_1], ['News Link 2', practice.news_link_2], ['News Link 3', practice.news_link_3], ['News Link 4', practice.news_link_4], ['News Link 5', practice.news_link_5] ]; let referencesHTML = ''; referenceFields.forEach(function(item){ if( item[1] !== null && item[1] !== undefined && String(item[1]).trim() !== '' ){ referencesHTML += gridDetailRow( item[0], item[1] ); } }); if(!referencesHTML){ referencesHTML = `
No reference information available.
`; } /* * Final HTML. */ app.innerHTML = `
${imageHTML}
${mapHTML}
${ type ? `
${gridEscapeHTML(type)}
` : '' }

${gridEscapeHTML(title)}

${ category ? `
${gridEscapeHTML(category)}
` : '' } ${ reference ? `
GIAN Reference: ${gridEscapeHTML(reference)}
` : '' }
About the Practice
${ detail ? `
Detail
${gridFormatText(detail)}
` : `
No practice description available.
` }
About the Innovator
${ innovator ? gridDetailRow( 'Knowledge Provider / Innovator', innovator ) : '' } ${ address ? gridDetailRow( 'Address', address ) : '' } ${ city ? gridDetailRow( 'City', city ) : '' } ${ district ? gridDetailRow( 'District', district ) : '' } ${ state ? gridDetailRow( 'State', state ) : '' } ${ pincode ? gridDetailRow( 'PIN Code', pincode ) : '' } ${ practice['Email Address (if any)'] ? gridDetailRow( 'Email', practice['Email Address (if any)'] ) : '' } ${ practice['Contact no: (if any)'] ? gridDetailRow( 'Contact No.', practice['Contact no: (if any)'] ) : '' }
Practice / Technology Details
${practiceHTML}
PAS / Resources
${pasHTML}
References
${referencesHTML}
${imageFallbackScript} `; /* * Back button. */ const backButton = document.getElementById( 'grid-back-practices' ); if(backButton){ backButton.addEventListener( 'click', function(){ /* * Reloading restores the * paginated database. */ window.location.reload(); } ); } /* * Keep map/image at top of * details after AJAX. */ app.scrollIntoView({ behavior:'smooth', block:'start' }); }; /* ===================================================== COORDINATE DETECTION ===================================================== */ window.gridExtractCoordinates = function(value){ if(!value){ return null; } const text = String(value); /* * Decimal pair: * * 21.1702, 72.8311 * * 21.1702 72.8311 */ const match = text.match( /(-?\d+(?:\.\d+)?)\s*[,;]\s*(-?\d+(?:\.\d+)?)/ ); if(match){ const lat = parseFloat(match[1]); const lng = parseFloat(match[2]); if( lat >= -90 && lat <= 90 && lng >= -180 && lng <= 180 ){ return { lat:lat, lng:lng }; } } return null; }; /* ===================================================== DETAIL ROW ===================================================== */ window.gridDetailRow = function(label,value){ return `
${gridEscapeHTML(label)}: ${gridFormatText(value)}
`; }; /* ===================================================== SAFE TEXT ===================================================== */ window.gridEscapeHTML = function(value){ if( value === null || value === undefined ){ return ''; } const div = document.createElement('div'); div.textContent = String(value); return div.innerHTML; }; window.gridEscapeAttribute = function(value){ return gridEscapeHTML(value) .replace( /"/g, '"' ); }; /* ===================================================== FORMAT LONG TEXT + LINKS ===================================================== */ window.gridFormatText = function(value){ if( value === null || value === undefined || value === '' ){ return ''; } let text = gridEscapeHTML(value); /* * Convert URLs into clickable links. */ text = text.replace( /(https?:\/\/[^\s<]+)/g, function(url){ return ` ${url} `; } ); /* * Preserve line breaks. */ text = text.replace( /\r?\n/g, '
' ); return text; }; })();

Got questions? Contact us!