(function () {
var searchreplace = (function () {
'use strict';
var Cell = function (initial) {
var value = initial;
var get = function () {
return value;
};
var set = function (v) {
value = v;
};
var clone = function () {
return Cell(get());
};
return {
get: get,
set: set,
clone: clone
};
};
var global = tinymce.util.Tools.resolve('tinymce.PluginManager');
var global$1 = tinymce.util.Tools.resolve('tinymce.util.Tools');
function isContentEditableFalse(node) {
return node && node.nodeType === 1 && node.contentEditable === 'false';
}
function findAndReplaceDOMText(regex, node, replacementNode, captureGroup, schema) {
var m;
var matches = [];
var text, count = 0, doc;
var blockElementsMap, hiddenTextElementsMap, shortEndedElementsMap;
doc = node.ownerDocument;
blockElementsMap = schema.getBlockElements();
hiddenTextElementsMap = schema.getWhiteSpaceElements();
shortEndedElementsMap = schema.getShortEndedElements();
function getMatchIndexes(m, captureGroup) {
captureGroup = captureGroup || 0;
if (!m[0]) {
throw new Error('findAndReplaceDOMText cannot handle zero-length matches');
}
var index = m.index;
if (captureGroup > 0) {
var cg = m[captureGroup];
if (!cg) {
throw new Error('Invalid capture group');
}
index += m[0].indexOf(cg);
m[0] = cg;
}
return [
index,
index + m[0].length,
[m[0]]
];
}
function getText(node) {
var txt;
if (node.nodeType === 3) {
return node.data;
}
if (hiddenTextElementsMap[node.nodeName] && !blockElementsMap[node.nodeName]) {
return '';
}
txt = '';
if (isContentEditableFalse(node)) {
return '\n';
}
if (blockElementsMap[node.nodeName] || shortEndedElementsMap[node.nodeName]) {
txt += '\n';
}
if (node = node.firstChild) {
do {
txt += getText(node);
} while (node = node.nextSibling);
}
return txt;
}
function stepThroughMatches(node, matches, replaceFn) {
var startNode, endNode, startNodeIndex, endNodeIndex, innerNodes = [], atIndex = 0, curNode = node, matchLocation = matches.shift(), matchIndex = 0;
out:
while (true) {
if (blockElementsMap[curNode.nodeName] || shortEndedElementsMap[curNode.nodeName] || isContentEditableFalse(curNode)) {
atIndex++;
}
if (curNode.nodeType === 3) {
if (!endNode && curNode.length + atIndex >= matchLocation[1]) {
endNode = curNode;
endNodeIndex = matchLocation[1] - atIndex;
} else if (startNode) {
innerNodes.push(curNode);
}
if (!startNode && curNode.length + atIndex > matchLocation[0]) {
startNode = curNode;
startNodeIndex = matchLocation[0] - atIndex;
}
atIndex += curNode.length;
}
if (startNode && endNode) {
curNode = replaceFn({
startNode: startNode,
startNodeIndex: startNodeIndex,
endNode: endNode,
endNodeIndex: endNodeIndex,
innerNodes: innerNodes,
match: matchLocation[2],
matchIndex: matchIndex
});
atIndex -= endNode.length - endNodeIndex;
startNode = null;
endNode = null;
innerNodes = [];
matchLocation = matches.shift();
matchIndex++;
if (!matchLocation) {
break;
}
} else if ((!hiddenTextElementsMap[curNode.nodeName] || blockElementsMap[curNode.nodeName]) && curNode.firstChild) {
if (!isContentEditableFalse(curNode)) {
curNode = curNode.firstChild;
continue;
}
} else if (curNode.nextSibling) {
curNode = curNode.nextSibling;
continue;
}
while (true) {
if (curNode.nextSibling) {
curNode = curNode.nextSibling;
break;
} else if (curNode.parentNode !== node) {
curNode = curNode.parentNode;
} else {
break out;
}
}
}
}
function genReplacer(nodeName) {
var makeReplacementNode;
if (typeof nodeName !== 'function') {
var stencilNode_1 = nodeName.nodeType ? nodeName : doc.createElement(nodeName);
makeReplacementNode = function (fill, matchIndex) {
var clone = stencilNode_1.cloneNode(false);
clone.setAttribute('data-mce-index', matchIndex);
if (fill) {
clone.appendChild(doc.createTextNode(fill));
}
return clone;
};
} else {
makeReplacementNode = nodeName;
}
return function (range) {
var before;
var after;
var parentNode;
var startNode = range.startNode;
var endNode = range.endNode;
var matchIndex = range.matchIndex;
if (startNode === endNode) {
var node_1 = startNode;
parentNode = node_1.parentNode;
if (range.startNodeIndex > 0) {
before = doc.createTextNode(node_1.data.substring(0, range.startNodeIndex));
parentNode.insertBefore(before, node_1);
}
var el = makeReplacementNode(range.match[0], matchIndex);
parentNode.insertBefore(el, node_1);
if (range.endNodeIndex < node_1.length) {
after = doc.createTextNode(node_1.data.substring(range.endNodeIndex));
parentNode.insertBefore(after, node_1);
}
node_1.parentNode.removeChild(node_1);
return el;
}
before = doc.createTextNode(startNode.data.substring(0, range.startNodeIndex));
after = doc.createTextNode(endNode.data.substring(range.endNodeIndex));
var elA = makeReplacementNode(startNode.data.substring(range.startNodeIndex), matchIndex);
for (var i = 0, l = range.innerNodes.length; i < l; ++i) {
var innerNode = range.innerNodes[i];
var innerEl = makeReplacementNode(innerNode.data, matchIndex);
innerNode.parentNode.replaceChild(innerEl, innerNode);
}
var elB = makeReplacementNode(endNode.data.substring(0, range.endNodeIndex), matchIndex);
parentNode = startNode.parentNode;
parentNode.insertBefore(before, startNode);
parentNode.insertBefore(elA, startNode);
parentNode.removeChild(startNode);
parentNode = endNode.parentNode;
parentNode.insertBefore(elB, endNode);
parentNode.insertBefore(after, endNode);
parentNode.removeChild(endNode);
return elB;
};
}
text = getText(node);
if (!text) {
return;
}
if (regex.global) {
while (m = regex.exec(text)) {
matches.push(getMatchIndexes(m, captureGroup));
}
} else {
m = text.match(regex);
matches.push(getMatchIndexes(m, captureGroup));
}
if (matches.length) {
count = matches.length;
stepThroughMatches(node, matches, genReplacer(replacementNode));
}
return count;
}
var FindReplaceText = { findAndReplaceDOMText: findAndReplaceDOMText };
var getElmIndex = function (elm) {
var value = elm.getAttribute('data-mce-index');
if (typeof value === 'number') {
return '' + value;
}
return value;
};
var markAllMatches = function (editor, currentIndexState, regex) {
var node, marker;
marker = editor.dom.create('span', { 'data-mce-bogus': 1 });
marker.className = 'mce-match-marker';
node = editor.getBody();
done(editor, currentIndexState, false);
return FindReplaceText.findAndReplaceDOMText(regex, node, marker, false, editor.schema);
};
var unwrap = function (node) {
var parentNode = node.parentNode;
if (node.firstChild) {
parentNode.insertBefore(node.firstChild, node);
}
node.parentNode.removeChild(node);
};
var findSpansByIndex = function (editor, index) {
var nodes;
var spans = [];
nodes = global$1.toArray(editor.getBody().getElementsByTagName('span'));
if (nodes.length) {
for (var i = 0; i < nodes.length; i++) {
var nodeIndex = getElmIndex(nodes[i]);
if (nodeIndex === null || !nodeIndex.length) {
continue;
}
if (nodeIndex === index.toString()) {
spans.push(nodes[i]);
}
}
}
return spans;
};
var moveSelection = function (editor, currentIndexState, forward) {
var testIndex = currentIndexState.get();
var dom = editor.dom;
forward = forward !== false;
if (forward) {
testIndex++;
} else {
testIndex--;
}
dom.removeClass(findSpansByIndex(editor, currentIndexState.get()), 'mce-match-marker-selected');
var spans = findSpansByIndex(editor, testIndex);
if (spans.length) {
dom.addClass(findSpansByIndex(editor, testIndex), 'mce-match-marker-selected');
editor.selection.scrollIntoView(spans[0]);
return testIndex;
}
return -1;
};
var removeNode = function (dom, node) {
var parent = node.parentNode;
dom.remove(node);
if (dom.isEmpty(parent)) {
dom.remove(parent);
}
};
var find = function (editor, currentIndexState, text, matchCase, wholeWord) {
text = text.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g, '\\$&');
text = text.replace(/\s/g, '[^\\S\\r\\n]');
text = wholeWord ? '\\b' + text + '\\b' : text;
var count = markAllMatches(editor, currentIndexState, new RegExp(text, matchCase ? 'g' : 'gi'));
if (count) {
currentIndexState.set(-1);
currentIndexState.set(moveSelection(editor, currentIndexState, true));
}
return count;
};
var next = function (editor, currentIndexState) {
var index = moveSelection(editor, currentIndexState, true);
if (index !== -1) {
currentIndexState.set(index);
}
};
var prev = function (editor, currentIndexState) {
var index = moveSelection(editor, currentIndexState, false);
if (index !== -1) {
currentIndexState.set(index);
}
};
var isMatchSpan = function (node) {
var matchIndex = getElmIndex(node);
return matchIndex !== null && matchIndex.length > 0;
};
var replace = function (editor, currentIndexState, text, forward, all) {
var i, nodes, node, matchIndex, currentMatchIndex, nextIndex = currentIndexState.get(), hasMore;
forward = forward !== false;
node = editor.getBody();
nodes = global$1.grep(global$1.toArray(node.getElementsByTagName('span')), isMatchSpan);
for (i = 0; i < nodes.length; i++) {
var nodeIndex = getElmIndex(nodes[i]);
matchIndex = currentMatchIndex = parseInt(nodeIndex, 10);
if (all || matchIndex === currentIndexState.get()) {
if (text.length) {
nodes[i].firstChild.nodeValue = text;
unwrap(nodes[i]);
} else {
removeNode(editor.dom, nodes[i]);
}
while (nodes[++i]) {
matchIndex = parseInt(getElmIndex(nodes[i]), 10);
if (matchIndex === currentMatchIndex) {
removeNode(editor.dom, nodes[i]);
} else {
i--;
break;
}
}
if (forward) {
nextIndex--;
}
} else if (currentMatchIndex > currentIndexState.get()) {
nodes[i].setAttribute('data-mce-index', currentMatchIndex - 1);
}
}
currentIndexState.set(nextIndex);
if (forward) {
hasMore = hasNext(editor, currentIndexState);
next(editor, currentIndexState);
} else {
hasMore = hasPrev(editor, currentIndexState);
prev(editor, currentIndexState);
}
return !all && hasMore;
};
var done = function (editor, currentIndexState, keepEditorSelection) {
var i, nodes, startContainer, endContainer;
nodes = global$1.toArray(editor.getBody().getElementsByTagName('span'));
for (i = 0; i < nodes.length; i++) {
var nodeIndex = getElmIndex(nodes[i]);
if (nodeIndex !== null && nodeIndex.length) {
if (nodeIndex === currentIndexState.get().toString()) {
if (!startContainer) {
startContainer = nodes[i].firstChild;
}
endContainer = nodes[i].firstChild;
}
unwrap(nodes[i]);
}
}
if (startContainer && endContainer) {
var rng = editor.dom.createRng();
rng.setStart(startContainer, 0);
rng.setEnd(endContainer, endContainer.data.length);
if (keepEditorSelection !== false) {
editor.selection.setRng(rng);
}
return rng;
}
};
var hasNext = function (editor, currentIndexState) {
return findSpansByIndex(editor, currentIndexState.get() + 1).length > 0;
};
var hasPrev = function (editor, currentIndexState) {
return findSpansByIndex(editor, currentIndexState.get() - 1).length > 0;
};
var Actions = {
done: done,
find: find,
next: next,
prev: prev,
replace: replace,
hasNext: hasNext,
hasPrev: hasPrev
};
var get = function (editor, currentIndexState) {
var done = function (keepEditorSelection) {
return Actions.done(editor, currentIndexState, keepEditorSelection);
};
var find = function (text, matchCase, wholeWord) {
return Actions.find(editor, currentIndexState, text, matchCase, wholeWord);
};
var next = function () {
return Actions.next(editor, currentIndexState);
};
var prev = function () {
return Actions.prev(editor, currentIndexState);
};
var replace = function (text, forward, all) {
return Actions.replace(editor, currentIndexState, text, forward, all);
};
return {
done: done,
find: find,
next: next,
prev: prev,
replace: replace
};
};
var Api = { get: get };
var open = function (editor, currentIndexState) {
var last = {}, selectedText;
editor.undoManager.add();
selectedText = global$1.trim(editor.selection.getContent({ format: 'text' }));
function updateButtonStates() {
win.statusbar.find('#next').disabled(Actions.hasNext(editor, currentIndexState) === false);
win.statusbar.find('#prev').disabled(Actions.hasPrev(editor, currentIndexState) === false);
}
function notFoundAlert() {
editor.windowManager.alert('Could not find the specified string.', function () {
win.find('#find')[0].focus();
});
}
var win = editor.windowManager.open({
layout: 'flex',
pack: 'center',
align: 'center',
onClose: function () {
editor.focus();
Actions.done(editor, currentIndexState);
editor.undoManager.add();
},
onSubmit: function (e) {
var count, caseState, text, wholeWord;
e.preventDefault();
caseState = win.find('#case').checked();
wholeWord = win.find('#words').checked();
text = win.find('#find').value();
if (!text.length) {
Actions.done(editor, currentIndexState, false);
win.statusbar.items().slice(1).disabled(true);
return;
}
if (last.text === text && last.caseState === caseState && last.wholeWord === wholeWord) {
if (!Actions.hasNext(editor, currentIndexState)) {
notFoundAlert();
return;
}
Actions.next(editor, currentIndexState);
updateButtonStates();
return;
}
count = Actions.find(editor, currentIndexState, text, caseState, wholeWord);
if (!count) {
notFoundAlert();
}
win.statusbar.items().slice(1).disabled(count === 0);
updateButtonStates();
last = {
text: text,
caseState: caseState,
wholeWord: wholeWord
};
},
buttons: [
{
text: 'Find',
subtype: 'primary',
onclick: function () {
win.submit();
}
},
{
text: 'Replace',
disabled: true,
onclick: function () {
if (!Actions.replace(editor, currentIndexState, win.find('#replace').value())) {
win.statusbar.items().slice(1).disabled(true);
currentIndexState.set(-1);
last = {};
}
}
},
{
text: 'Replace all',
disabled: true,
onclick: function () {
Actions.replace(editor, currentIndexState, win.find('#replace').value(), true, true);
win.statusbar.items().slice(1).disabled(true);
last = {};
}
},
{
type: 'spacer',
flex: 1
},
{
text: 'Prev',
name: 'prev',
disabled: true,
onclick: function () {
Actions.prev(editor, currentIndexState);
updateButtonStates();
}
},
{
text: 'Next',
name: 'next',
disabled: true,
onclick: function () {
Actions.next(editor, currentIndexState);
updateButtonStates();
}
}
],
title: 'Find and replace',
items: {
type: 'form',
padding: 20,
labelGap: 30,
spacing: 10,
items: [
{
type: 'textbox',
name: 'find',
size: 40,
label: 'Find',
value: selectedText
},
{
type: 'textbox',
name: 'replace',
size: 40,
label: 'Replace with'
},
{
type: 'checkbox',
name: 'case',
text: 'Match case',
label: ' '
},
{
type: 'checkbox',
name: 'words',
text: 'Whole words',
label: ' '
}
]
}
});
};
var Dialog = { open: open };
var register = function (editor, currentIndexState) {
editor.addCommand('SearchReplace', function () {
Dialog.open(editor, currentIndexState);
});
};
var Commands = { register: register };
var showDialog = function (editor, currentIndexState) {
return function () {
Dialog.open(editor, currentIndexState);
};
};
var register$1 = function (editor, currentIndexState) {
editor.addMenuItem('searchreplace', {
text: 'Find and replace',
shortcut: 'Meta+F',
onclick: showDialog(editor, currentIndexState),
separator: 'before',
context: 'edit'
});
editor.addButton('searchreplace', {
tooltip: 'Find and replace',
onclick: showDialog(editor, currentIndexState)
});
editor.shortcuts.add('Meta+F', '', showDialog(editor, currentIndexState));
};
var Buttons = { register: register$1 };
global.add('searchreplace', function (editor) {
var currentIndexState = Cell(-1);
Commands.register(editor, currentIndexState);
Buttons.register(editor, currentIndexState);
return Api.get(editor, currentIndexState);
});
function Plugin () {
}
return Plugin;
}());
})();
Sorry, but nothing matched your search terms. Please try again with some different keywords.
প্রতিদিন প্রতিবেদক: টাঙ্গাইলের ভূঞাপুরে অবৈধভাবে মজুদ সরকারের খাদ্য বান্ধব কর্মসূচির (ওএমএস) ২০০ বস্তা চাল জব্দ করেছে উপজেলা প্রশাসন। বৃহস্পতিবার (১৯ জানুয়ারি) সন্ধ্যার দিকে উপজেলার ফলদা ইউনিয়নের ধুবলিয়া এলাকা থেকে বাবুল নামের এক চাল ডিলারের গোডাউন থেকে ওএমএসের ২০০ বস্তা চাল জব্দ করেন উপজেলার সহকারী কমিশনার (ভূমি) তামান্না রহমান জ্যোতি। ধুবলিয়া গ্রামের অনেকে জানান, দীর্ঘদিন ধরে… Continue reading ভূঞাপুরে অবৈধভাবে মজুদ ২০০ বস্তা সরকারি চাল জব্দ
প্রতিদিন প্রতিবেদক: নরসিংদীতে ব্যাংকে দায়িত্বরত অবস্থায় মারা যাওয়া আনসার সদস্য রঞ্জু মিয়ার স্ত্রী সন্তানের চোখে এখন শুধুই অন্ধকার। পরিবারের একমাত্র উপার্জনশীল ব্যক্তিকে হারিয়ে তাদের মধ্যে নেমে এসেছে অন্ধকারের ছায়া। মারা যাওয়া রঞ্জু মিয়ার বাড়ি জামালপুরের সরিষাবাড়ী উপজেলার কুড়ারিয়া পটল গ্রামে। রঞ্জু মিয়া এক মাস বয়সে মাকে হারান। এরপর বড় বোন মর্জিনা বেগম নিজের কাছে ধনবাড়ী… Continue reading আনসার সদস্য রঞ্জুর পরিবারের সামনে এখন শুধুই অন্ধকার
প্রতিদিন প্রতিবেদক: টাঙ্গাইলের কালিহাতী উপজেলার টুনিমগড়া এলাকায় নিউ ধলেশ^রী নদীতে অবৈধ বাংলা ড্রেজার বসিয়ে দীর্ঘ দিন যাবৎ বালু উত্তোলন করছে স্থানীয় একটি মহল। এতে নদী তীরবর্তী একটি দাখিল মাদ্রাসাসহ অর্ধশতাধিক বসতবাড়ী নদী ভাঙ্গনের আশংকা দেখা দিয়েছে। জানা যায়, টুনিমগড়া গ্রামের বাসিন্দা ও শিল্প মন্ত্রনালয়ে কর্মরর্ত কর্মচারী উজ্জল মিয়ার নেতৃত্বে একটি মহল গত এক মাস যাবৎ… Continue reading কালিহাতীতে অবৈধ বাংলা ড্রেজারে বালু উত্তোলন
প্রতিদিন প্রতিবেদক: জাতীয়তাবাদী দল বিএনপির প্রতিষ্ঠাতা চেয়ারম্যান শহীদ রাষ্ট্রপতি জিয়াউর রহমানের ৮৭তম জন্মদিন উপলক্ষে দোয়া মাহফিল ও মোনাজাত করেছেন টাঙ্গাইল জেলা বিএনপি। বৃহস্পতিবার দুপুরে শহরের কোট মসজিদে এ দোয়া মাহফিলের আয়োজন করা হয়। দোয়া মাহফিলে অংশ নেয় টাঙ্গাইল জেলা বিএনপির সভাপতি হাসানুজ্জামিল শাহীন, সাধারণ সম্পাদক অ্যাডভোকেট ফরহাদ ইকবালসহ বিএনপির অঙ্গ সহযোগী সংগঠনের নেতৃবৃন্দ।
প্রতিদিন প্রতিবেদক: টাঙ্গাইলের বাসাইলে মৃত সেনা বীর মুক্তিযোদ্ধার পরিবার ও দুই সেনা বীর মুক্তিযোদ্ধাকে পাকা টিনশেড ঘর উপহার দিয়েছে বাংলাদেশ সেনাবাহিনী। সেনাবাহিনী প্রধানের পক্ষ থেকে তাদেরকে এই ঘর প্রদান করা হয়। বৃহস্পতিবার ১৯ জানুয়ারি দুপুরে বঙ্গবন্ধু সেনানিবাসের ১১ রিভারাইন ইঞ্জিনিয়ার ব্যাটালিয়নের ভারপ্রাপ্ত অধিনায়ক মেজর সাখাওয়াত হোসেন উপস্থিত থেকে উপজেলার কাঞ্চনপুর ইউনিয়নের কাঞ্চনপুর গ্রামের সেনা বীর… Continue reading বাসাইলে সেনা বীর মুক্তিযোদ্ধাদের ঘর প্রদান
প্রতিদিন প্রতিবেদক, গোপালপুর: বিভিন্ন পেশার মানুষের সাথে মত বিনিময় করেছেন নবাগত জেলা প্রশাসক জসীম উদ্দীন হায়দার। গোপালপুর উপজেলা প্রশাসনের আয়োজনে বৃহস্পতিবার দুপুরে উপজেলা পরিষদ মিলনায়তনে নির্বাহী অফিসার মোঃ পারভেজ মল্লিকের সভাপতিত্বে প্রধান অতিথি ছিলেন টাঙ্গাইলের জেলা প্রশাসক জসীম উদ্দীন হায়দার। এ সময় উপজেলার সকল অফিসার-কর্মচারী, বীর মুক্তিযোদ্ধা, জনপ্রতিনিধি, সাংবাদিক এবং স্থানীয় গণ্যমান্য ব্যক্তিবর্গের সাথে মতবিনিময়… Continue reading গোপালপুরে বিভিন্ন পেশার মানুষের সাথে জেলা প্রশাসকের মতবিনিময়
প্রতিদিন প্রতিবেদক: টাঙ্গাইলে হত্যা মামলায় কাশেম আলী নামের এক ব্যক্তিকে যাবজ্জীবন সশ্রম কারাদন্ড দিয়েছেন আদালত। সোমবার বিকালে টাঙ্গাইলের দ্বিতীয় অতিরিক্ত দায়রা জজ মোহাম্মদ মোরশেদ আলম ওই রায় দেন। রায়ে দন্ডিত ব্যক্তিকে ২০ হাজার টাকা জরিমানা অনাদায়ে আরও চার মাস সশ্রম করাদন্ডে দন্ডিত করা হয়েছে। দন্ডিত মোহাম্মদ কাশেম আলী (৩৫) বাসাইল উপজেলার করটিয়াপাড়া গ্রামের আজিজুল মিয়ার… Continue reading টাঙ্গাইলে হত্যা মামলায় এক ব্যক্তির যাবজ্জীবন
প্রতিদিন প্রতিবেদক: টাঙ্গাইল জেলা আওয়ামী লীগ নেতা ও বীর মুক্তিযোদ্ধা ফারুক আহমেদের ১০ম মৃত্যুবার্ষিকী পালন করা হয়েছে। বুধবার সকালে নিহত ফারুক আহমেদের পরিবার ও আওয়ামী লীগ নেতাকর্মীদের উদ্যোগে হত্যাকারীদের বিচারের দাবিতে একটি বিক্ষোভ মিছিল বের করা হয়। মিছিলটি শহরের বিভিন্ন সড়ক প্রদক্ষিন করে। পরে নিহত ফারুক আহমদের কবর জিয়ারত ও পুস্পস্তবক অর্পণ শেষে শহরের নিরালা… Continue reading টাঙ্গাইলে আ’লীগ নেতা ফারুক আহমেদের মৃত্যুবার্ষিকী পালন
প্রতিদিন প্রতিবেদক, সখীপুর: টাঙ্গাইলের সখীপুরে বেসরকারি সংস্থা প্রশিকা মানবিক উন্নয়ন কেন্দ্রের উদ্যোগে অসহায় ও দুঃস্থ মানুষের মাঝে শীতবস্ত্র বিতরণ করা হয়েছে। বুধবার ১৮ জানুয়ারি বিকেলে প্রশিকার সভাকক্ষে এ শীতবস্ত্র বিতরণ করা হয়। প্রশিকার উপ-পরিচালক আজিজুর রহমানের সভাপতিত্বে প্রধান অতিথি হিসেবে বক্তব্য দেন উপজেলা নির্বাহী কর্মকর্তা (ইউএনও) ফারজানা আলম। এছাড়াও উপস্থিত ছিলেন পৌর মেয়র বীর মুক্তিযোদ্ধা… Continue reading সখীপুরে প্রশিকার শীতবস্ত্র বিতরণ
প্রতিদিন প্রতিবেদক: টাঙ্গাইলের কালিহাতীতে গাছের গুড়ি ভর্তি একটি ট্রাক উল্টে গিয়ে একজন নিহত হয়েছেন। টাঙ্গাইল বঙ্গবন্ধু সেতু মহাসড়কের উপজেলার সল্লা নামকস্থানে বিকাল ৫ টার দিকে এ দুর্ঘটনা ঘটে। তাৎক্ষণিকভাবে নিহতের নাম পরিচয় শনাক্ত হয়নি। বঙ্গবন্ধু সেতু পূর্ব থানার এএসআই ইফতেখারুল মোকাম্মেল বলেন, কাঠভর্তি মিনি ট্রাকটি উত্তরবঙ্গের দিকে যাচ্ছিলো। পথে মহাসড়কের সল্লায় উল্টে যায়। এতে ঘটনাস্থলেই… Continue reading কালিহাতীতে কাঠ ভর্তি ট্রাক উল্টে নিহত ১