{"version":3,"sources":["assets/images/newageislam-logo.png","assets/images/blogger.png","assets/images/newageislam-dummy.jpg","components/header.components.jsx","http/index.js","components/subscribe.form.component.jsx","components/footer.componets.jsx","utility.js","components/UI/Spinner/Spinner2.component.jsx","components/debateIslam.component.jsx","components/latestArticle.component.jsx","components/latestComments.component.jsx","components/UI/liTag/liTag.jsx","components/popularArticles.component.jsx","components/subscribe.component.jsx","components/UI/link/link.jsx","components/videoSection.component.jsx","pages/home.component.jsx","pages/contacts.component.jsx","pages/disclaimer.component.jsx","components/article.list.component.jsx","components/Page.js","components/pagination.component.jsx","components/UI/Spinner/Spinner.component.jsx","components/writerDetail.component.jsx","pages/list.component.jsx","pages/about.component.jsx","pages/subscribepage.component.jsx","components/comment-detail-component.jsx","components/comment-form.component.jsx","components/shareComponent.jsx","components/detail.component.jsx","pages/article.detail.component.jsx","pages/latest.articles.component.jsx","pages/popular.articles.component.jsx","components/comment.component.jsx","pages/latest.comments.component.jsx","components/video.component.jsx","pages/latest.videos.component.jsx","pages/privacypolicy.component.jsx","pages/advertise.component.jsx","pages/donate.component.jsx","components/sidebarInnerPage.component.jsx","components/searchResults.component.jsx","pages/search.component.jsx","pages/view.comments.page.jsx","pages/archives.page.component.jsx","pages/bestofbefore.component.jsx","pages/notFoundPage.jsx","pages/unsubscribepage.componen.jsx","App.js","serviceWorker.js","index.js"],"names":["module","exports","withRouter","writers","history","location","useState","search","setSearch","showSideBarHeader","setShowSideBarHeader","showSubMenuHeader","setShowSubMenuHeader","Date","date","setDate","useEffect","interval","setInterval","clearInterval","onBarClick","onIconClick","e","stopPropagation","className","href","src","LogoImg","alt","width","height","title","toDateString","toLocaleTimeString","onClick","to","preventDefault","map","writerId","writerName","key","pathname","rel","trim","push","type","name","placeholder","value","onChange","target","http","axios","create","baseURL","SuscribeForm","subscribe","setName","email","setEmail","disabled","setDisabled","submitSatus","setSubmitSatus","message","setMessage","setType","onSubmit","action","data","userName","userEmail","post","then","respose","console","log","error","role","id","test","Footer","bloggerImg","getFullYear","GetUrlLink","heading","split","join","toLowerCase","GetCommentCountByArticleID","comments","Article_ID","filter","comment","formatDateTime","dateTimestr","dateArr","dateSplitArr","checkImageExists","ImageName","AutherName","window","image","Image","url_image","decodeHtml","str","replace","m","CardSkleton","color","highlightColor","style","display","padding","circle","flexDirection","justifyContent","marginLeft","DebateIslam","setTimeout","Bootstrap","carousel","this","props","articles","length","w","Indicators","val","index","Indicator","active","Inner","innerArr","Item","article","defaultImg","Group_Name","Article_Heading","substring","dangerouslySetInnerHTML","__html","Article_Detail","Prev","Icon","Next","React","Component","memo","latestArticle","latestAricles","parsedAHeading","parsedADetail","AHeading","AdetailLen","ADetail","toString","articleimg","latestComments","latestVideos","Comments_ID","Articles_ID","Comments","Name","GROUP_NAME","stripedHtml","frameBorder","allow","allowFullScreen","slice","video","IMG_NAME","ID","TITLE","liTag","children","liClass","popularArtilces","mostPopularArticles","popularComments","documentsData","documentsComments","Fragment","subscribeSection","link","hrefLink","linkTitle","videoSection","languageData","sectionsData","lang","linkText","toUpperCase","GroupID","Home","state","bestOfBeforeArticles","sections","getBestBeforeArticles","a","get","params","view","result","setState","results","getSectionsData","localStorage","getItem","tx","tc","getTime","diff","Math","abs","parseInt","JSON","parse","setItem","stringify","getLatestArticles","getLatestComments","getMostPopularArticles","getSectionByFilter","section","includes","getLatestVideos","getBooksAndDocuments","Contacts","class","Disclaimer","articleList","isShowGroupHeading","Group_ID","Page","isDisabled","pageNumber","pageText","activeClass","itemClass","linkClass","activeLinkClass","disabledClass","isActive","ariaLabel","css","cx","linkCss","handleClick","bind","aria-label","defaultProps","undefined","activeLinkCLass","Pagination","has_previous_page","hideDisabled","hideFirstLastPages","hideNavigation","has_next_page","pages","itemsCountPerPage","pageRangeDisplayed","activePage","prevPageText","nextPageText","firstPageText","lastPageText","totalItemsCount","itemClassFirst","itemClassPrev","itemClassNext","itemClassLast","linkClassFirst","linkClassPrev","linkClassNext","linkClassLast","getPageUrl","paginationInfo","paginator","build","i","first_page","last_page","isPrevPageVisible","unshift","previous_page","isFirstPageVisible","isNextPageVisible","next_page","isLastPageVisible","total_pages","current_page","buildPages","innerClass","Spinner","writerDescription","writer","writerPhotoName","aboutWriter","ArticleList","totalCount","pageLimit","currentPage","isLoading","getDataByParams","authorId","groupId","page","response","description","onPageChanged","match","sectionId","parseQuery","queryString","articleSlug","prevProps","aria-hidden","About","Subscribepage","CommentDetail","CommentsCount","commentHtml","CreatedDateTime","reversed","CommentForm","context","commentObj","onInputChange","onFormSubmit","recaptchaToken","loading","articleId","Email","Comment","res","err","verifyCallback","onExpired","buttonDisabled","ArticleID","captchaDemo","reset","htmlFor","required","apiKey","initialValue","init","forced_root_block","theme","branding","menubar","plugins","toolbar","onEditorChange","ref","el","sitekey","Share","url","content","hashtag","FacebookShareButton","quote","FacebookIcon","WhatsappShareButton","WhatsappIcon","TwitterShareButton","TwitterIcon","LinkedinShareButton","LinkedinIcon","RedditShareButton","RedditIcon","EmailShareButton","EmailIcon","TumblrShareButton","TumblrIcon","ArticleContent","totalComments","sharedUrl","host","createHref","DateStr","getDate","getMonth","articleID","setData","fetchData","latestArticles","popularArticles","commentSection","YOUTUBE_LINK","videos","keyIndex","Privacypolicy","Advertise","Donate","sidebarInnerPage","pros","searchResults","origin","Search","searchText","searchResuts","searchIn","getSearchResults","handleChange","handleSubmit","searchKey","defaultValue","ViewComments","commentsCount","setCommentsCount","loadPageData","totalCounts","Archive","monthOptions","selectedDuration","getMonths","months","monthYear","onchangeMonthOption","option","month","MonthList","bestArticles","NotFoundPage","path","ParsedData","urlStr","Filtersection","find","UnSubscribepage","App","getWritersList","exact","component","Contact","BestOfBefore","LatestArticles","PopularArticles","LatestComments","LatestVideos","ArticleDetail","Archives","Boolean","hostname","ReactGA","initialize","createBrowserHistory","listen","set","pageview","app","ReactDOM","render","document","getElementById","navigator","serviceWorker","ready","registration","unregister"],"mappings":"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","file":"static/js/main.8153750a.chunk.js","sourcesContent":["module.exports = __webpack_public_path__ + \"static/media/newageislam-logo.ce57058c.png\";","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyFpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNS1jMDE0IDc5LjE1MTQ4MSwgMjAxMy8wMy8xMy0xMjowOToxNSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIChXaW5kb3dzKSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpFNUQ1OEQ3MDA0RjExMUVBOUE5MDgyRkU1RTM4NkNENyIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDpFNUQ1OEQ3MTA0RjExMUVBOUE5MDgyRkU1RTM4NkNENyI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOkU1RDU4RDZFMDRGMTExRUE5QTkwODJGRTVFMzg2Q0Q3IiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOkU1RDU4RDZGMDRGMTExRUE5QTkwODJGRTVFMzg2Q0Q3Ii8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+fdA9OgAAAYtJREFUeNqs1b1Lw0AYx/GkDSjVDopWXNx8g4oWBAdRxH9AJwUdBPEFXZ38G8RVUREc6uaf4OLiJILg4iLiIgittb4P6fk9eVKOI0219YEPJLn21yT33NVVSjlWJbGEAbjw4eEFZzhxIsqzzgexgnF0SmAJMXwhgyFs4yk0Ud+hmEZO/a4u0W18tyw4SONV/a1OkQgLbMGeqq3m7UD9DhflnZl1h128oRHvGMacnAc1imN7UtJIWYFb2Al55b0SElRHpVm2e2cWebmzBIroE2ZNYhP3uMK1y3MfcDCFdrsBpGXi0otxJ7p04FEs4gOuEVItTFe/nouY83+lG/2xWqBf4ZoKua6z4p48jh18Lm3zjCZrLJiodYyFBbrCrKyIqqQVqG/M04E3yKHVGNxAMz7QYDyiK5uEbu5l6wcKPwuCtknhUNVfWXQFazCDzzrCfIyYu402g0INYUUsBDmutWPrDXQNE2iTlVKq0PB52cF1N1yUB0P+AnTQKnqk5/yQftOTeYt9PJiD3wIMAJneA9YHKU8NAAAAAElFTkSuQmCC\"","module.exports = __webpack_public_path__ + \"static/media/newageislam-dummy.d426b7b8.jpg\";","import React, { useState, useEffect } from \"react\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport LogoImg from \"../assets/images/newageislam-logo.png\";\n\n// import SideBar from \"./sidebarInnerPage.component\";\n\nconst HeaderSection = ({ writers, history, location }) => {\n const [search, setSearch] = new useState(\"\");\n const [showSideBarHeader, setShowSideBarHeader] = new useState(false);\n const [showSubMenuHeader, setShowSubMenuHeader] = new useState(false);\n const [date, setDate] = new useState(new Date());\n\n useEffect(() => {\n let interval = null;\n interval = setInterval(() => {\n setDate(new Date());\n }, 1000);\n return () => {\n clearInterval(interval);\n };\n }, [date]);\n\n const getSearch = () => {\n if(search.trim() ===\"\"){\n return;\n }\n history.push({ pathname: \"/search\", search: `?searchKey=${search}` });\n };\n const onBarClick = () => {\n setShowSideBarHeader(!showSideBarHeader);\n if (showSubMenuHeader) {\n setShowSubMenuHeader(!showSubMenuHeader);\n }\n };\n const onIconClick = (e) => {\n e.stopPropagation();\n setShowSubMenuHeader(!showSubMenuHeader);\n };\n\n return (\n
\n
\n
\n
\n
\n
\n \n \n \n
\n
\n
\n
\n \n
\n {new Date().toDateString(\"en-US\")},{\" \"}\n {date.toLocaleTimeString(\"en-US\")}\n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n \n \n
\n
\n \n \n \n
\n \n
  • \n \n Home{\" \"}\n \n
  • \n
  • \n {\n e.preventDefault();\n onIconClick(e);\n }}\n >\n Authors\n \n \n
      \n {writers.map(({ writerId, writerName }) => {\n return (\n
    • \n \n {\" \"}\n {writerName}{\" \"}\n \n
    • \n );\n })}\n
    \n
  • \n
  • \n \n About us\n \n
  • \n
  • \n \n Archives\n \n
  • \n
  • \n \n New Age Islam TV\n \n
  • \n
  • \n \n Books\n \n
  • \n
  • \n \n Donate\n \n
  • \n
  • \n \n Advertise\n \n
  • \n
  • \n \n Subscribe\n \n {/* \n Subscribe\n */}\n
  • \n \n {/* \n
    */}\n \n
    \n
    \n
    \n \n {\n setSearch(e.target.value)}\n />\n }\n
    \n
    \n
    \n \n \n
    \n {/*
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    */}\n
    \n );\n};\n\nexport default withRouter(HeaderSection);\n","import axios from \"axios\";\n\nconst http = axios.create({\n baseURL: \"https://newageislam.com/api\",\n // baseURL: \"http://localhost:8081\",\n});\n\nexport default http;\n","import React, { useState } from \"react\";\nimport http from \"../http\";\n\nconst SuscribeForm = ({subscribe=true}) => {\n const [name, setName] = new useState(\"\");\n const [email, setEmail] = new useState(\"\");\n const [disabled, setDisabled] = new useState(true);\n const [submitSatus, setSubmitSatus] = new useState(false);\n const [message, setMessage] = new useState(null);\n const [type, setType] = new useState(\"fail\");\n\n // useEffect(() => {\n // const timer = setTimeout(() => {\n // setMessage(null);\n // }, 1000);\n // return () => clearTimeout(timer);\n // }, []);\n\n const submitHandler = e => {\n e.preventDefault();\n setSubmitSatus(true);\n setMessage(null);\n let action = \"\";\n let data = {};\n if(subscribe) {\n action = \"/subscribe\";\n data = { userName: name, userEmail: email };\n }else{\n action = \"/unsubscribe\";\n data = {userEmail: email };\n }\n http\n .post(action, data)\n .then(respose => {\n console.log(respose);\n setSubmitSatus(false);\n setType(respose.data.type);\n setMessage(respose.data.message);\n setName(\"\");\n setEmail(\"\");\n })\n .catch(error => {\n setSubmitSatus(false);\n setType(error.type);\n setMessage(error.message);\n setName(\"\");\n setEmail(\"\");\n });\n };\n return (\n \n {message ? (\n \n {message}\n \n ) : null}\n {subscribe ?
    \n setName(e.target.value)}\n />\n
    : null}\n
    \n {\n const { value } = e.target;\n const reg = /^([A-Za-z0-9_\\-\\.])+\\@([A-Za-z0-9_\\-\\.])+\\.([A-Za-z]{2,4})$/;\n if (reg.test(value) === false) {\n setDisabled(true);\n setEmail(value);\n return;\n }\n setEmail(value);\n setDisabled(false);\n }}\n />\n
    \n \n {submitSatus ? \"Loading...\" : \"Submit\"}\n \n \n );\n};\n\nexport default SuscribeForm;\n","import React from \"react\";\n// import Litag from \"../components/UI/liTag/liTag\";\n// import Link from \"../components/UI/link/link\";\nimport bloggerImg from \"../assets/images/blogger.png\";\nimport SubscribeForm from \"./subscribe.form.component\";\nconst Footer = () => {\n // let footerLink = [\n // {\n // titleLink: \"Islam\"\n // },\n // {\n // titleLink: \"What is Islam?\"\n // },\n // {\n // titleLink: \"About Islam\"\n // },\n // {\n // titleLink: \"Islam Online\"\n // },\n // {\n // titleLink: \"Jihad\"\n // },\n // {\n // titleLink: \"Islam & Terrorism\"\n // }\n // ];\n return (\n
    \n
    \n
    \n
    \n
    \n
    \n

    Useful Links

    \n \n
    \n
    \n
    \n
    \n

    Contact Us

    \n
      \n
    • \n

      \n Sultan Shahin, E-22, Indra Prastha Apts., 114, I. P.\n Extension, New Delhi – 110092\n

      \n
    • \n
    • \n \n +91-11-4081 0213\n \n
    • \n
    • \n \n editor@NewAgeIslam.com\n \n \n sultan.shahin@gmail.com\n \n
    • \n
    \n
    \n
    \n
    \n
    \n

    Newsletter

    \n {/*

    Sign up to hear and get our daily update via email.

    */}\n \n
    \n
    \n
    \n
    \n

    Connect with us

    \n

    \n Follow us to stay in the loop on what's new with New Age\n Islam.\n

    \n
      \n
    • \n \n \n \n
    • \n
    • \n \n \n \n
    • \n
    • \n \n \n \n
    • \n
    • \n \n \n \n
    • \n
    • \n \n \n \n
    • \n {/*
    • */}\n
    • \n \n \"blogger\"\n \n
    • \n
    \n
    \n
    \n
    \n
    \n\n {/*
    \n
      \n {footerLink.map(linkObj => {\n let linkText = linkObj.titleLink.toLowerCase();\n // let link = linkText.length > 0 ? linkText.join('-') : linkText;\n return (\n \n \n \n );\n })}\n
    \n
    */}\n\n
    \n Copyright © 2008 - {(new Date().getFullYear())}. NewAgeIslam All Rights Reserved.\n
    \n
    \n
    \n );\n};\nexport default Footer;\n","import React from \"react\";\n\nexport const GetUrlLink = (heading) => {\n heading = heading.split(\" \").join(\"-\");\n heading = heading.split(\":\").join(\"-\");\n heading = heading.split(\"'\").join(\"-\");\n heading = heading.split(\"+\").join(\"-\");\n heading = heading.split(\"&\").join(\"-\");\n heading = heading.split(\".\").join(\"\");\n heading = heading.split(\"?\").join(\"\");\n ////heading = heading.Replace(\"---\", \"-\");\n return heading.toLowerCase();\n};\n\nexport const GetCommentCountByArticleID = (comments, Article_ID) => {\n return comments.filter((comment) => comment.Article_ID === +Article_ID);\n};\n\nexport const formatDateTime = (dateTimestr) => {\n if (!dateTimestr) {\n return null;\n }\n let dateArr = dateTimestr.split(\"T\");\n let dateSplitArr = dateArr[0].split(\"-\");\n let newDateTime = `${\n dateSplitArr[2] + \"/\" + dateSplitArr[1] + \"/\" + dateSplitArr[0]\n } ${dateArr[1].split(\".\")[0]}`;\n\n return newDateTime;\n};\n\nexport const checkImageExists = (ImageName, AutherName) => {\n if (typeof window !== \"undefined\") {\n var image = new Image();\n var url_image = `https://newageislam.com/Controlpanel/ArticleImage/at_th_${ImageName}`;\n image.src = url_image;\n if (image.width === 0) {\n return (\n \n );\n } else {\n return (\n \n );\n }\n }\n};\n\nexport const checkContentIsUrdu = (content) => {\n if (!content) return false;\n let urduRange = /[\\u0600-\\u06FF]/;\n return urduRange.test(content);\n};\n\nexport const decodeHtml = (str) => {\n var map = {\n \"&\": \"&\",\n \"<\": \"<\",\n \">\": \">\",\n \""\": '\"',\n \"'\": \"'\",\n };\n return str.replace(/&|<|>|"|'/g, function (m) {\n return map[m];\n })\n};\n","import React from \"react\";\nimport Skeleton, { SkeletonTheme } from \"react-loading-skeleton\";\n\nconst CardSkleton = () => (\n \n
    \n \n \n \n \n \n
    \n \n
    \n);\n\nexport default CardSkleton;\n","import React, { memo } from \"react\";\nimport Bootstrap, { Carousel } from \"bootstrap-4-react\";\nimport { GetUrlLink, GetCommentCountByArticleID, checkImageExists } from \"../utility\";\nimport defaultImg from \"../assets/images/newageislam-dummy.jpg\";\nimport CardSkelton from \"./UI/Spinner/Spinner2.component\";\n\nclass DebateIslam extends React.Component {\n componentDidMount() {\n window.setTimeout(() => Bootstrap.carousel(\"#carouselIndicat\"), 2000);\n }\n render() {\n const { articles, comments } = this.props;\n\n return (\n
    \n
    \n
    \n

    Rethinking Islam

    \n \n View All \n \n
    \n
    \n {!articles.length ? (\n \n ) : (\n \n \n {articles.map((val, index) => {\n return (\n \n );\n })}\n \n\n \n {articles.map((innerArr, index) => {\n return (\n \n
    \n {innerArr.map((article) => {\n return (\n \n
    \n {article.ImageName === \"\" ||\n article.ImageName === \"NAI_NewAgeIslam.jpg\" ||\n article.ImageName ===\n \"NAI_NewAgeIslam.png\" ? (\n \n ) : (\n checkImageExists(article.ImageName, article.AutherName)\n )}\n
    \n

    \n {article.Group_Name}\n

    \n

    \n \n {article.Article_Heading.replace(\n /<[^>]+>/g,\n \"\"\n ).length > 110\n ? article.Article_Heading.replace(\n /<[^>]+>/g,\n \"\"\n ).substring(0, 110) + \"...\"\n : article.Article_Heading.replace(\n /<[^>]+>/g,\n \"\"\n )}\n

    \n \n By {article.AutherName}\n \n ]+>/g,\n \"\"\n ).length > 100\n ? article.Article_Detail.replace(\n /<[^>]+>/g,\n \"\"\n ).substring(0, 100) + \"...\"\n : article.Article_Detail.replace(\n /<[^>]+>/g,\n \"\"\n ),\n }}\n >

    \n {article.AutherName ? (\n \n Read More{\" \"}\n \n \n ) : (\n \n Read More{\" \"}\n \n \n )}\n {GetCommentCountByArticleID(\n comments,\n article.Article_ID\n ).length ? (\n

    \n (Comments{\" \"}\n {\n GetCommentCountByArticleID(\n comments,\n article.Article_ID\n )[0][\"totalComments\"]\n }\n )\n

    \n ) : (\n

    \n (Comments 0 )\n

    \n )}\n
    \n
    \n
    \n );\n })}\n
    \n \n );\n })}\n \n \n \n \n \n \n \n \n )}\n
    \n \n
    \n );\n }\n}\n\nexport default memo(DebateIslam);\n","import React from \"react\";\nimport articleimg from \"../assets/images/newageislam-dummy.jpg\";\nimport { GetUrlLink, GetCommentCountByArticleID, checkImageExists } from \"../utility\";\nimport CardSkelton from \"./UI/Spinner/Spinner2.component\";\n\nconst latestArticle = ({ latestAricles, comments }) => (\n
    \n
    \n
    \n
    \n
    \n

    Latest Articles

    \n \n View All \n \n
    \n
    \n {!latestAricles.length ? : null}\n
    \n {latestAricles.map(\n ({\n Article_ID,\n AutherName,\n Article_Heading,\n Article_Detail,\n ImageName,\n Group_Name,\n }) => {\n let parsedAHeading = Article_Heading.replace(/<[^>]+>/g, \"\");\n let parsedADetail = Article_Detail.replace(/<[^>]+>/g, \"\");\n let AHeading =\n parsedAHeading.length > 73\n ? parsedAHeading.substring(0, 73) + \"..\"\n : parsedAHeading;\n let AdetailLen = parsedAHeading.length < 52 ? 50 : 40;\n let ADetail =\n parsedADetail.length > AdetailLen\n ? parsedADetail.substring(0, AdetailLen) + \"..\"\n : parsedADetail;\n return (\n \n
    \n {ImageName &&\n ImageName !== \"NAI_NewAgeIslam.jpg\" &&\n ImageName !== \"NAI_NewAgeIslam.png\" ? (\n checkImageExists(ImageName, AutherName)\n ) : (\n \n )}\n
    \n

    {Group_Name}

    \n

    \n {AutherName ? (\n \n {AHeading}\n \n ) : (\n \n {AHeading}\n \n )} \n

    \n \n By {AutherName}\n \n

    \n {GetCommentCountByArticleID(comments, Article_ID)\n .length ? (\n

    \n (Comments{\" \"}\n {\n GetCommentCountByArticleID(\n comments,\n Article_ID\n )[0][\"totalComments\"]\n }\n )\n

    \n ) : (\n

    \n (Comments 0 )\n

    \n )}\n
    \n
    \n
    \n );\n }\n )}\n
    \n
    \n\n
    \n \n View All \n \n
    \n
    \n
    \n \n
    \n);\n\nexport default latestArticle;\n","import React from \"react\";\nimport { GetUrlLink, decodeHtml } from \"../utility\";\n// import Litag from \"../components/UI/liTag/liTag\";\n// import Link from \"../components/UI/link/link\";\nimport CardSkelton from \"./UI/Spinner/Spinner2.component\";\n\nconst latestComments = ({ latestComments, latestVideos }) => (\n
    \n
    \n
    \n
    \n
    \n

    Latest Comments

    \n \n View All \n \n
    \n
    \n {latestComments.length ? null : }\n
      \n {latestComments.map(\n ({\n Comments_ID,\n Articles_ID,\n Article_Heading,\n Comments,\n Name,\n GROUP_NAME,\n }) => {\n let stripedHtml = decodeHtml(Comments.replace(/<[^>]+>/g, \"\"));\n return (\n \n
      \n
      \n

      \n \n {Article_Heading.replace(/<[^>]+>/g, \"\").length > 70\n ? Article_Heading.replace(\n /<[^>]+>/g,\n \"\"\n ).substring(0, 100) + \"...\"\n : Article_Heading.replace(/<[^>]+>/g, \"\")}\n

      \n

      \n \n {`By ${Name}`}\n \n
      \n
      \n \n );\n }\n )}\n
    \n
    \n\n
    \n \n View All Comments \n \n
    \n
    \n
    \n
    \n

    New Videos

    \n \n View All \n \n
    \n
    \n \n
      \n {latestVideos\n .slice(1, 4)\n .filter((video) => video.IMG_NAME !== \"abc.jpg\")\n .map(({ ID, TITLE, IMG_NAME }) => {\n return (\n
    • \n
      \n \n \n
      \n
    • \n );\n })}\n
    \n
    \n\n
    \n \n View All \n \n
    \n
    \n
    \n
    \n
    \n);\n\nexport default latestComments;\n","import React from \"react\";\nconst liTag = ({ children, liClass }) => {\n return
  • {children}
  • ;\n};\n\nexport default liTag;\n","import React from \"react\";\nimport LiTag from \"../components/UI/liTag/liTag\";\nimport { GetUrlLink, GetCommentCountByArticleID } from \"../utility\";\nimport CardSkleton from \"./UI/Spinner/Spinner2.component\";\n\nconst popularArtilces = ({\n mostPopularArticles,\n popularComments,\n documentsData,\n documentsComments,\n}) => (\n
    \n
    \n
    \n
    \n
    \n

    Popular Articles

    \n \n View All \n \n
    \n
    \n
      \n {!mostPopularArticles.length ? (\n \n ) : (\n mostPopularArticles\n .slice(0, 10)\n .map(({ Article_ID, Article_Heading, GROUP_NAME }) => {\n return (\n \n \n \n {Article_Heading}\n \n {GetCommentCountByArticleID(\n popularComments,\n Article_ID\n ).length ? (\n

      \n (Comments{\" \"}\n {\n GetCommentCountByArticleID(\n popularComments,\n Article_ID\n )[0][\"totalComments\"]\n }\n )\n

      \n ) : (\n

      \n (Comments 0 )\n

      \n )}\n
      \n
      \n );\n })\n )}\n
    \n
    \n\n
    \n \n View All \n \n
    \n\n
    \n
    \n
    \n

    Books and Documents

    \n \n View All \n \n
    \n
    \n
      \n {!documentsData.length ? (\n \n ) : (\n documentsData.map(\n ({ Article_ID, Article_Heading, Group_Name: GROUP_NAME }) => {\n return (\n \n \n \n {Article_Heading}\n \n {GetCommentCountByArticleID(\n documentsComments,\n Article_ID\n ).length ? (\n

      \n (Comments{\" \"}\n {\n GetCommentCountByArticleID(\n documentsComments,\n Article_ID\n )[0][\"totalComments\"]\n }\n )\n

      \n ) : (\n

      \n (Comments 0 )\n

      \n )}\n
      \n
      \n );\n }\n )\n )}\n
    \n\n
    \n \n View All \n \n
    \n\n
    \n
    \n
    \n
    \n
    \n);\n\nexport default popularArtilces;\n","import React from \"react\";\nimport SubscribeForm from \"./subscribe.form.component\";\n\nconst subscribeSection = props => {\n return (\n \n
    \n

    Subscribe to Our Newsletters

    \n {/*

    \n Sign up with your email address to receive news and updates.\n

    */}\n \n {/*

    We respect your privacy.

    */}\n
    \n \n );\n};\n\nexport default subscribeSection;\n","import React from \"react\";\nimport { Link } from \"react-router-dom\";\nconst link = ({ hrefLink, linkTitle }) => {\n return (\n {linkTitle} \n );\n};\n\nexport default link;\n","import React from \"react\";\nimport Litag from \"../components/UI/liTag/liTag\";\nimport Link from \"../components/UI/link/link\";\n// import CardSkleton from \"./UI/Spinner/Spinner2.component\";\n\nconst videoSection = ({ languageData, sectionsData }) => (\n
    \n
    \n {/* {!languageData.length || !sectionsData.length ? : null} */}\n
    \n
    \n
    \n

    Languages

    \n
    \n
    \n
      \n {languageData.map((lang) => {\n let linkText = lang.Group_Name.toLowerCase().split(\" \");\n return (\n \n \n \n );\n })}\n
    \n
    \n
    \n
    \n
    \n

    Sections

    \n
    \n
    \n
      \n {sectionsData.map((lang) => {\n let linkText = lang.Group_Name.toLowerCase()\n .split(\" \")\n .join(\"-\");\n return (\n \n \n \n );\n })}\n
    \n
    \n
    \n
    \n
    \n
    \n);\n\nexport default videoSection;\n","import React from \"react\";\nimport DebatIslam from \"../components/debateIslam.component\";\nimport ArticleSection from \"../components/latestArticle.component\";\nimport LatestCommentsSection from \"../components/latestComments.component\";\nimport PopularArtilces from \"../components/popularArticles.component\";\nimport SubscribeSection from \"../components/subscribe.component\";\nimport VideoSection from \"../components/videoSection.component\";\nimport http from \"../http\";\n\nclass Home extends React.Component {\n state = {\n writers: [],\n bestOfBeforeArticles: [],\n sections: [],\n latestAricles: [],\n latestComments: [],\n mostPopularArticles: [],\n documentsData: [],\n latestVideos: [],\n };\n componentDidMount() {\n this.getBestBeforeArticles();\n this.getLatestArticles();\n this.getLatestComments();\n this.getSectionsData();\n this.getMostPopularArticles();\n this.getBooksAndDocuments();\n this.getLatestVideos();\n }\n getBestBeforeArticles = async () => {\n try {\n const result = await http.get(\"/getBestOfBeforeArtilces\", {\n params: { view: \"home\" },\n });\n this.setState({\n bestOfBeforeArticles: [\n {\n data: result.data.results,\n comments: result.data.comments,\n },\n ],\n });\n } catch (err) {\n console.log(err);\n }\n };\n\n getSectionsData = async () => {\n try {\n const sections = localStorage.getItem(\"sections\");\n const tx = localStorage.getItem(\"sectionsTime\");\n const tc = new Date().getTime();\n const diff = Math.abs((parseInt(tc) - parseInt(tx)) / (60 * 60 * 1000));\n if (sections && diff < 8) {\n this.setState({ sections: JSON.parse(sections) });\n return;\n }\n const result = await http.get(\"/sections\");\n localStorage.setItem(\"sections\", JSON.stringify(result.data));\n localStorage.setItem(\"sectionsTime\", new Date().getTime());\n this.setState({\n sections: result.data,\n });\n } catch (err) {\n console.log(err);\n }\n };\n\n getLatestArticles = async () => {\n try {\n const result = await http.get(\"/latestArticles\", {\n params: { view: \"home\" },\n });\n this.setState({\n latestAricles: [\n {\n data: result.data.results,\n comments: result.data.comments,\n },\n ],\n });\n } catch (err) {\n console.log(err);\n }\n };\n\n getLatestComments = async () => {\n try {\n const result = await http.get(\"/latestComments\", {\n params: { view: \"home\" },\n });\n this.setState({\n latestComments: result.data.results,\n });\n } catch (err) {\n console.log(err);\n }\n };\n\n getMostPopularArticles = async () => {\n try {\n const result = await http.get(\"/getMostPopularArticles\", {\n params: { view: \"home\" },\n });\n this.setState({\n mostPopularArticles: [\n {\n data: result.data.results,\n comments: result.data.comments,\n },\n ],\n });\n } catch (err) {\n console.log(err);\n }\n };\n\n getSectionByFilter = (filter) => {\n const { sections } = this.state;\n if (!sections.length) {\n return sections;\n }\n\n return sections.filter((section) => {\n return filter\n ? section.Group_Name.includes(\"Section\")\n : !section.Group_Name.includes(\"Section\");\n });\n };\n\n getLatestVideos = async () => {\n try {\n const result = await http.get(\"/getVideos\", {\n params: { view: \"home\" },\n });\n this.setState({\n latestVideos: result.data.results,\n });\n } catch (err) {\n console.log(err);\n }\n };\n\n getBooksAndDocuments = async () => {\n try {\n const result = await http.get(\"/getMostPopularBooksAndDocuments\");\n this.setState({\n documentsData: [\n {\n data: result.data.results,\n comments: result.data.comments,\n },\n ],\n });\n } catch (err) {\n console.log(err);\n }\n };\n\n render() {\n let {\n latestAricles,\n latestComments,\n mostPopularArticles,\n documentsData,\n bestOfBeforeArticles,\n } = this.state;\n return (\n \n \n \n \n \n \n \n \n );\n }\n}\n\nexport default Home;\n","import React from \"react\";\nclass Contacts extends React.Component {\n\n render() {\n return (\n \n
    \n
    \n
    \n
    \n

    Contact Details

    \n
    \n \n
    \n
    \n
    \n

    Send Enquiry

    \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n )\n }\n}\n\n\nexport default Contacts;","import React from \"react\";\nclass Disclaimer extends React.Component {\n\n render() {\n return (\n \n
    \n
    \n

    Disclaimer and Fair Use Notice, NewAgeIslam.com

    \n
    \n
    \n

    Disclaimer regarding content and data

    \n

    The idea of a free media is one that we at NewAgeIslam.com hold in the highest regard. We believe in bringing our site visitors, readers and audio listeners or video viewers the widest possible array of information that comes to our notice in regard to the trials and tribulations of the Muslim community all over the world in their bid to adapt to the fast-changing circumstances of the Twenty-first century and anything else that we deem my be of interest to or necessary for our readers and viewers. We trust our worldwide readership and audience, and believe them to be fully-capable of making their own decisions and discerning their own realities, regardless of our editors’ or contributors’ interventions on one side of a certain argument or the other. We want Muslims to recognise while holding any discussion that two-thirds of humanity, at lest, does not agree with us, in fact most Muslims themselves hold very different opinions from other Muslims and subscribe to different schools of thoughts in interpreting their scriptures and in their responses to current word events. Clearly there is no point in considering one’s own view as final and applicable to the entire Muslim community, even to one’s own sect or sub-sect, or more vainly, all humanity.

    \n\n

    Among the thousands of articles and comments posted here for your consideration, or links and summaries of which are mailed to you daily, there will doubtless be some that you find useless, and possibly offensive, in content or in language; but we believe you will be discerning enough to realize that even the ideas, subjects and comments you disagree with have some value in terms of clarifying and giving a context to your own ideas and endorsing our common agenda of promoting a peaceful and prosperous life for all on the planet. Offensive, particularly obscene language we keep removing from the site whenever we observe them or some reader points out to us, but this cannot always be done in good time as this is a non-monitored site in the interest of facilitating readers’ comments.

    \n\n

    The subjects we choose to discuss or the points of view expressed by our writers, or even the editorial staff does not necessarily reflect any official position of the website NewAgeIslam.com. It would be best if our readers and viewers did not make any 'assumptions' about NewAgeIslam.com on that count. This website is not about promoting any agenda, even if its editors and contributors appear to have definite opinions of their own on certain issues of concern to the ummah and may even seek to convince others of the same. As we say in our masthead we are here to help the Muslim community map out an agenda suitable for the Twenty-First century through open, no-holds-barred debates and discussions on all issues of concern. No community or sect or individual of any persuasion is barred from participating in the discussions on NewAgeIslam.com. We welcome all with open minds and hope that some good will come out through this interaction.

    \n\n

    It is our firm belief that it would be ill-advised and cowardly to sweep under the carpet doubts and questions abut our own ideological positions or any novel or strong views on any subject. Muslims will have to consider all sorts of opinions -- of not only Muslims of all sects and persuasions, but also ex-Muslims and non-Muslims, as indeed would-be Muslims – to be able to arrive at a conclusion as to what suits us best in a certain situation.

    \n\n

    The situation we live in today in this New Age is vastly different from the conditions that prevailed in 7th century Arabia at the time of the advent of Islam. That is why Allah (\"Subhanahu Wa T'ala\" – SWT – meaning \"The Glorious and High\") and Prophet (Peace Be Upon Him - PBUH) in his wisdom gave us the instrumentality of Ijtihad, so that we can continue to renew our religion as and when required. And it is largely because we failed to use this instrument continuously through the last one and a half millennium that we are in the mess we are in today. We would have continued to be the most advanced community in the world armed with the latest ideology, had we continued to heed Allah (SWT) and Rasoolullah (PBUH) who had told us that we will need to continuously renew our religion to stay ahead of the changing times. In some respects we are still ahead of other religious communities as a forward-looking community on the strength of the fact that ours is the latest of revealed religions, but in many other respects we lag far behind others who hold ideologies and ways of life (deens) even older than our own. It is to their credit that despite a lack of specific guidance in their theologies about a continuous renewal of faith, they felt the need for doing so and have gone ahead, while it is to our eternal shame that despite our original ideology specifically asking us to continue to change with times, we have not done so and are hence one of the most backward in our political, societal and civilisational mores.

    \n

    We at NewAgeIslam.com have a horror of censoring news, views, information and comment here, except for the foul language some of our readers and viewers love to use. We believe censoring is for you to do, either as self-censorship or as pointing out if something needs to be removed from the site. We strongly recommend that you do not 'assume' anything, particularly about our intentions. We intend to do nothing but to provide us with a forum where we can freely discuss any relevant subject. Read, consider, and make your own informed decisions. Let us state once again, in a firmer tone, NewAgeIslam.com does not necessarily adhere to, or endorse, any or all of the links, stories, articles, editorials, or products offered by its editors, contributors or sponsors found or broadcast on this site.

    \n\n

    All of the materials and data offered on this site, and on the multimedia programs, are for informational and educational purposes only, to help you be more enlightened about what is going on in the world, who is thinking and saying what and then be ale to form your own informed opinion.

    \n\n

    And remember: it's all free to you, 24 hours a day, 7 days a week.

    \n\n

    Thank you for visiting.

    \n\n

    Read, Listen, View and Think and Share with us your thoughts in the interest of world peace and prosperity for all. Peace and Prosperity for Muslims depends on the peace and prosperity of the world, two-thirds of which is not Muslim and most of the Muslims too may not belong to our particular Islamic sect or sub-sect or school of thought, whatever it may be.

    \n\n

    Sultan Shahin, Editor, New Age Islam

    \n\n
    \n\n

    Other Disclaimers

    \n\n

    The materials comprising the NewAgeIslam.com news service (the \"Website\") are provided by NewAgeIslam.com as a service to its readers on an \"as-is, as-available\" basis for informational purposes only. NewAgeIslam.com assumes no responsibility for any errors or omissions in these materials. NewAgeIslam.com makes no commitment to update the information contained herein. Further, NewAgeIslam.com cannot edit, control, review for truth or accuracy, or screen for defamation or obscenity any content provided to the Website by a third party through postings, uploaded files, or any other form of communication, nor can the NewAgeIslam.com ensure prompt removal of defamatory, obscene, inappropriate or unlawful content after transmission. Any such third party postings, files or other communications do not necessarily represent the opinions, beliefs, or positions of the NewAgeIslam.com, its owner, employees or sponsors.

    \n\n

    NewAgeIslam.com makes no, and expressly disclaims any, representations or warranties, express or implied, regarding the Website, including, without limitation, any implied warranties of merchantability or fitness for a particular purpose. NewAgeIslam.com makes no, and expressly disclaims any, warranties, express or implied, regarding the correctness, accuracy, completeness, timeliness, and reliability of the text, graphics, links to other sites and any other items accessed from or via this Website or the Internet, or that the services will be uninterrupted, error-free or free of viruses or other harmful components. Under no circumstances shall NewAgeIslam.com, its owner, or any of their respective partners, officers, directors, employees, agents, associates or representatives be liable for any damages, whether direct, indirect, special or consequential damages for lost revenues, lost profits, or otherwise, arising from or in connection with this Website, the materials contained herein, or the Internet generally.

    \n\n

    All original materials contained in this Website are protected by copyright laws, and may not be reproduced, republished, distributed, transmitted, displayed, broadcast or otherwise exploited in any manner without the express prior written permission of NewAgeIslam.com or the author, authors or sources of said materials.

    \n\n

    Fair Use Notice

    \n\n

    This site contains copyrighted material the use of which has not always been specifically authorized by the copyright owner. We are making such material available in our efforts to promote Co-Existence and Dialogue of Religions and Civilisations, and advance understanding of Islam and Democracy, Pluralism, Terrorism, Human Rights, Islamic Laws and Ideology, etc. We believe this constitutes a 'fair use' of any such copyrighted material as provided for in section 107 of the US Copyright Law. If you wish to use copyrighted material from this site for purposes of your own that go beyond 'fair use', you must obtain permission from the copyright owner. The material on this site is distributed without profit to those who have expressed a prior interest in receiving the included information for research and educational purposes. New Age Islam has no affiliation whatsoever with the originator of these articles nor is New Age Islam endorsed or sponsored by the originator of these articles.

    \n

    For more information go to: http://www.law.cornell.edu/uscode/17/107.shtml

    \n\n

    United States Code: Title 17, Section 107\n http://www4.law.cornell.edu/uscode/unframed/17/107.html

    \n\n

    Notwithstanding the provisions of sections 106 and 106A, the fair use of a copyrighted work, including such use by reproduction in copies or phonorecords or by any other means specified by that section, for purposes such as criticism, comment, news reporting, teaching (including multiple copies for classNameroom use), scholarship, or research, is not an infringement of copyright. In determining whether the use made of a work in any particular case is a fair use the factors to be considered shall include - (1) the purpose and character of the use, including whether such use is of a commercial nature or is for non-profit educational purposes; (2) the nature of the copyrighted work; (3) the amount and substantiality of the portion used in relation to the copyrighted work as a whole; and (4) the effect of the use upon the potential market for or value of the copyrighted work. The fact that a work is unpublished shall not itself bar a finding of fair use if such finding is made upon consideration of all the above factors.

    \n\n

    United States Code: Title 17, Section 106 Chapter 1 - Subject Matter And Scope of Copyright http://www4.law.cornell.edu/uscode/unframed/17/106.html

    \n

    Subject to sections 107 through 120, the owner of copyright under this title has the exclusive rights to do and to authorize any of the following: (1) to reproduce the copyrighted work in copies or phonorecords; (2) to prepare derivative works based upon the copyrighted work; (3) to distribute copies or phonorecords of the copyrighted work to the public by sale or other transfer of ownership, or by rental, lease, or lending; (4) in the case of literary, musical, dramatic, and choreographic works, pantomimes, and motion pictures and other audiovisual works, to perform the copyrighted work publicly; (5) in the case of literary, musical, dramatic, and choreographic works, pantomimes, and pictorial, graphic, or sculptural works, including the individual images of a motion picture or other audiovisual work, to display the copyrighted work publicly; and (6) in the case of sound recordings, to perform the copyrighted work publicly by means of a digital audio transmission.

    \n\n

    United States Code: Title 17, Section 107\n http://www4.law.cornell.edu/uscode/unframed/17/107.html

    \n\n

    Notwithstanding the provisions of sections 106 and 106A, the fair use of a copyrighted work, including such use by reproduction in copies or phonorecords or by any other means specified by that section, for purposes such as criticism, comment, news reporting, teaching (including multiple copies for classNameroom use), scholarship, or research, is not an infringement of copyright. In determining whether the use made of a work in any particular case is a fair use the factors to be considered shall include - (1) the purpose and character of the use, including whether such use is of a commercial nature or is for non-profit educational purposes; (2) the nature of the copyrighted work; (3) the amount and substantiality of the portion used in relation to the copyrighted work as a whole; and (4) the effect of the use upon the potential market for or value of the copyrighted work. The fact that a work is unpublished shall not itself bar a finding of fair use if such finding is made upon consideration of all the above factors.

    \n\n

    United States Code: Title 17, Section 106 Chapter 1 - Subject Matter And Scope of Copyright http://www4.law.cornell.edu/uscode/unframed/17/106.html

    \n\n

    Subject to sections 107 through 120, the owner of copyright under this title has the exclusive rights to do and to authorize any of the following: (1) to reproduce the copyrighted work in copies or phonorecords; (2) to prepare derivative works based upon the copyrighted work; (3) to distribute copies or phonorecords of the copyrighted work to the public by sale or other transfer of ownership, or by rental, lease, or lending; (4) in the case of literary, musical, dramatic, and choreographic works, pantomimes, and motion pictures and other audiovisual works, to perform the copyrighted work publicly; (5) in the case of literary, musical, dramatic, and choreographic works, pantomimes, and pictorial, graphic, or sculptural works, including the individual images of a motion picture or other audiovisual work, to display the copyrighted work publicly; and (6) in the case of sound recordings, to perform the copyrighted work publicly by means of a digital audio transmission.

    \n

    To: Members of the Faculty, Hoover Institution Fellows, Academic Staff, and Library Directors

    \n

    From: Condoleezza Rice, Provost

    \n\n

    Re: Copyright Reminder

    \n\n

    October 30, 1998

    \n\n

    This memorandum provides a general description of the applicability of the copyright law and the so-called \"fair use\" exemptions to the copyright law's general prohibition on copying. It also describes \"safe harbour\" guidelines applicable to classNameroom copying.

    \n\n

    The federal copyright statute governs the reproduction of works of authorship. In general, works governed by copyright law include such traditional works of authorship as books, photographs, music, drama, video and sculpture, and also software, multimedia, and databases. Copyrighted works are protected regardless of the medium in which they are created or reproduced; thus, copyright extends to digital works and works transformed into a digital format. Copyrighted works are not limited to those that bear a copyright notice. As a result of changes in copyright law, works published since March 1, 1989 need not bear a copyright notice to be protected under the statute.

    \n\n

    Two provisions of the copyright statute are of particular importance to teachers and researchers:

    \n\n

    * a provision that codifies the doctrine of \"fair use,\" under which limited copying of copyrighted works without the permission of the owner is allowed for certain teaching and research purposes; and

    \n\n

    * a provision that establishes special limitations and exemptions for the reproduction of copyrighted works by libraries and archives.

    \n

    The concept of fair use is necessarily somewhat vague when discussed in the abstract. Its application depends critically on the particular facts of the individual situation. Neither the case law nor the statutory law provides bright lines concerning which uses are fair and which are not. However, you may find it helpful to refer to certain third party source materials. Guidelines for classNameroom copying by not-for-profit educational institutions have been prepared by a group consisting of the Authors League of America, the Association of American Publishers, and an ad hoc committee of educational institutions and organizations. In addition, fair use guidelines for educational multimedia have been prepared by a group coordinated by the consortium of College and University Multimedia Centres (CCUMC). These guidelines describe safe harbour conditions, but do not purport to define the full extent of \"fair use.\"

    \n\n

    The guidelines, as well as other source material, are available through a variety of resources, including through the world wide web site http://fairuse.stanford.edu. Stanford University Libraries & Academic Information Resources, in collaboration with the Council on Library Resources and FindLaw Internet Legal Resources, are sponsors of this web site. The site assembles a wide range of materials related to the use of copyrighted material by individuals, libraries, and educational institutions.

    \n\n

    I hope that the discussion below helps to clarify further the nature of \"fair use.\"

    \n\n

    I. Fair Use for Teaching and Research

    \n\n

    The \"fair use\" doctrine allows limited reproduction of copyrighted works for educational and research purposes. The relevant portion of the copyright statue provides that the \"fair use\" of a copyrighted work, including reproduction \"for purposes such as criticism, news reporting, teaching (including multiple copies for classNameroom use), scholarship, or research\" is not an infringement of copyright. The law lists the following factors as the ones to be evaluated in determining whether a particular use of a copyrighted work is a permitted \"fair use,\" rather than an infringement of the copyright:

    \n

    * the purpose and character of the use, including whether such use is of a commercial nature or is for nonprofits educational purposes;

    \n\n

    * the nature of the copyrighted work;

    \n\n

    * the amount and substantiality of the portion used in relation to the copyrighted work as a whole, and

    \n\n

    * the effect of the use upon the potential market for or value of the copyrighted work.

    \n\n

    Although all of these factors will be considered, the last factor is the most important in determining whether a particular use is \"fair.\" Where a work is available for purchase or license from the copyright owner in the medium or format desired, copying of all or a significant portion of the work in lieu of purchasing or licensing a sufficient number of \"authorized\" copies would be presumptively unfair. Where only a small portion of a work is to be copied and the work would not be used if purchase or licensing of a sufficient number of authorized copies were required, the intended use is more likely to be found to be fair.

    \n\n

    A federal appeals court recently decided an important copyright fair use case involving course packs. In Princeton University Press, et.al. v. Michigan Document Services, the U.S. Court of Appeals for the Sixth Circuit concluded that the copying of excerpts from books and other publications by a commercial copy service without the payment of fees to the copyright holders to create course packs for university students was not fair use. The size of the offending excerpts varied from 30 percent to as little as 5 percent of the original publications. Although the opinion in this case is not binding in California, it is consistent with prior cases from other courts, and there is a reasonable likelihood that the California federal courts would reach a similar conclusion on similar facts.

    \n\n

    Where questions arise, we suggest that you consult the guidelines for classNameroom copying and other available source material available on the fair use web site, cited above. Please note that the guidelines are intended to state the minimum, not the maximum, extent of the fair use doctrine. Thus, just because your use is not within the guidelines, it is it not necessarily outside the scope of fair use. In the absence of a definitive conclusion, however, if the proposed use deviates from the guidelines, you should consider obtaining permission to use the work from the copyright owner. In instances where the fair use question is important and permission would be difficult or expensive to obtain, a member of the Fair Use Advisory Group (described below) or the Legal Office can assist in analyzing whether a particular proposed use would constitute \"fair use.\"

    \n\n

    Some photocopying services will obtain copyright permission and add the price of the royalties, if any, to the price of the materials. A request to copy a copyrighted work should generally be sent to the permission department of the publisher of the work. Permission requests should contain the following:

    \n\n

    * Title, author, and/or editor, and edition

    \n\n

    * Exact material to be used, giving page numbers or chapters

    \n\n

    * Number of copies to be made

    \n\n

    * Use to be made of the copied materials

    \n\n

    * Form of distribution (classNameroom, newsletter, etc.)

    \n\n

    * Whether the material is to be sold

    \n\n

    Draft form letters can be obtained from or reviewed by a member of the Fair Use Advisory Group or the Legal Office.

    \n\n

    For certain works, permission may also be sought from the Copyright Clearance Centre (CCC) which will quote a charge for works for which they are able to give permission. The Copyright Clearance Centre can be contacted at www.copyright.com or (978) 750-8400, but it may be easier to go through a copying service that deals regularly with the CCC.

    \n\n

    II. Course Reserves

    \n

    Some libraries at Stanford will refuse to accept multiple photocopies or to make photocopies of copyrighted materials needed for course reserves without first having permission from the copyright holder. Other libraries on campus will accept a limited number of photocopies for course reserves. Consult individual libraries for clarification of their policies.

    \n\n

    While the libraries have blanket permission from dozens of journals, obtaining permission sometimes takes a good deal of time. Experience in obtaining permission has shown that an inquiry addressed to a journal publisher frequently produces information that the copyright is actually held by the author, and four weeks is often inadequate to obtain such permission. Four to six weeks is considered the norm.

    \n\n

    Permission may be obtained in a number of ways:

    \n\n

    * Upon request, some libraries on campus will obtain materials for course reserve. In these cases, the librarian will write to obtain permission to photocopy or to purchase reprints. However, most libraries do not provide this service.

    \n\n

    * Written permission may be obtained by the academic department.

    \n\n

    * Oral permission may be obtained by faculty members, departmental secretaries, or library staff, in which case a written record is needed of that action.

    \n\n

    Note that filling course reserve requirements may require two to three months before the quarter begins if the library does not already have a copy of the publication, if the publication is out of print, or if the copyright holder is not readily available.

    \n\n

    III. Resources

    \n\n

    Additional information on copyright issues may be found on the world wide web site http://fairuse.stanford.edu.

    \n\n

    Questions about the copyright law as it affects faculty and staff in their University capacities should be directed to a member of the Fair Use Advisory Group (see attachment) or to Linda Woodward in the Legal Office (3-9751), who can put you in touch with the appropriate lawyer to respond to your specific question. Questions about library policy and course reserves should be addressed to Assunta Pisani, Associate Director, University Libraries (apisani@sulmail or 3-5553). Information concerning the application of copyright law to computer software can be found in the memorandum \"Copying of Computer Software\" distributed by the Library and Information Resources and in Administrative Guide Memorandum 62.

    \n\n

    Thank you for your cooperation in ensuring the observation of these guidelines.

    \n\n

    The information comprised on this site in not offered or held to be a solicitation of the views, ideas or policies explained or represented in stories, articles and editorials offered. It is being presented as news and news only. Further, the content of NewAgeIslam.com does not constitute advice or a recommendation by NewAgeIslam.com and should not be relied upon in making (or refraining from making) any decision relating to the material presented here.

    \n\n

    Neither NewAgeIslam.com nor its staff nor its sponsors, its ISP of any contributors to the site can be held liable or responsible in any way for any opinions, suggestions, recommendations or comments made by any of the contributors to the various materials on this site...nor do opinions of contributors necessarily reflect those of NewAgeIslam.com, et al.

    \n\n

    In no event shall NewAgeIslam.com, its staff, its sponsors, its contributors or its ISP be liable for any damages whatsoever, including, without limitation, direct, special, indirect, consequential, or incidental damages, or damages for lost profits, loss of revenue, or loss of use, arising out of or related to the NewAgeIslam.com internet site or the information contained in it, whether such damages arise in contract, negligence, tort, under statute, in equity, at law or otherwise.

    \n
    \n
    \n
    \n )\n }\n}\n\n\nexport default Disclaimer;","import React from \"react\";\nimport articleimg from \"../assets/images/newageislam-dummy.jpg\";\nimport { GetUrlLink, GetCommentCountByArticleID, checkImageExists } from \"../utility\";\n\nconst articleList = ({ isShowGroupHeading, article, comments }) => {\n const {\n Article_Detail,\n Article_ID,\n Article_Heading,\n AutherName,\n ImageName,\n Group_Name,\n Group_ID,\n } = article;\n return (\n \n
    \n
    \n {ImageName &&\n ImageName !== \"NAI_NewAgeIslam.jpg\" &&\n ImageName !== \"NAI_NewAgeIslam.png\" ? (\n checkImageExists(ImageName, AutherName)\n ) : (\n \"\"\n )}\n
    \n

    {isShowGroupHeading ? Group_Name : null}

    \n

    \n {AutherName ? (\n \n {Article_Heading}\n \n ) : (\n \n {Article_Heading}\n \n )} \n

    \n By {AutherName}\n ]+>/g, \"\").length > 350\n ? Article_Detail.replace(/<[^>]+>/g, \"\").substring(0, 350) +\n \"...\"\n : Article_Detail.replace(/<[^>]+>/g, \"\"),\n }}\n >

    \n {AutherName ? (\n \n Read More \n \n ) : (\n \n Read More \n \n )}\n {comments &&\n GetCommentCountByArticleID(comments, Article_ID).length ? (\n

    \n (Comments{\" \"}\n {\n GetCommentCountByArticleID(comments, Article_ID)[0][\n \"totalComments\"\n ]\n }\n )\n

    \n ) : (\n

    \n (Comments 0)\n

    \n )}\n
    \n
    \n
    \n
    \n );\n};\n\nexport default articleList;\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport cx from \"classnames\";\n\nexport default class Page extends Component {\n static propTypes = {\n pageText: PropTypes.oneOfType([PropTypes.string, PropTypes.element]),\n pageNumber: PropTypes.number.isRequired,\n onClick: PropTypes.func.isRequired,\n isActive: PropTypes.bool.isRequired,\n isDisabled: PropTypes.bool,\n activeClass: PropTypes.string,\n activeLinkClass: PropTypes.string,\n itemClass: PropTypes.string,\n linkClass: PropTypes.string,\n disabledClass: PropTypes.string,\n href: PropTypes.string,\n };\n\n static defaultProps = {\n activeClass: \"active\",\n disabledClass: \"disabled\",\n itemClass: undefined,\n linkClass: undefined,\n activeLinkCLass: undefined,\n isActive: false,\n isDisabled: false,\n href: \"#\",\n };\n\n handleClick(e) {\n const { isDisabled, pageNumber } = this.props;\n e.preventDefault();\n if (isDisabled) {\n return;\n }\n this.props.onClick(pageNumber);\n }\n\n render() {\n let {\n pageText,\n // pageNumber,\n activeClass,\n itemClass,\n linkClass,\n activeLinkClass,\n disabledClass,\n isActive,\n isDisabled,\n href,\n ariaLabel,\n } = this.props;\n\n const css = cx(itemClass, {\n [activeClass]: isActive,\n [disabledClass]: isDisabled,\n });\n\n const linkCss = cx(linkClass, {\n [activeLinkClass]: isActive,\n });\n\n return (\n
  • \n \n {pageText}\n \n
  • \n );\n }\n}\n","import React, { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport paginator from \"paginator\";\nimport Page from \"./Page\";\nimport cx from \"classnames\";\n// import \"bootstrap/dist/css/bootstrap.css\";\n\nexport default class Pagination extends Component {\n static propTypes = {\n totalItemsCount: PropTypes.number.isRequired,\n onChange: PropTypes.func.isRequired,\n activePage: PropTypes.number,\n itemsCountPerPage: PropTypes.number,\n pageRangeDisplayed: PropTypes.number,\n prevPageText: PropTypes.oneOfType([PropTypes.string, PropTypes.element]),\n nextPageText: PropTypes.oneOfType([PropTypes.string, PropTypes.element]),\n lastPageText: PropTypes.oneOfType([PropTypes.string, PropTypes.element]),\n firstPageText: PropTypes.oneOfType([PropTypes.string, PropTypes.element]),\n disabledClass: PropTypes.string,\n hideDisabled: PropTypes.bool,\n hideNavigation: PropTypes.bool,\n innerClass: PropTypes.string,\n itemClass: PropTypes.string,\n itemClassFirst: PropTypes.string,\n itemClassPrev: PropTypes.string,\n itemClassNext: PropTypes.string,\n itemClassLast: PropTypes.string,\n linkClass: PropTypes.string,\n activeClass: PropTypes.string,\n activeLinkClass: PropTypes.string,\n linkClassFirst: PropTypes.string,\n linkClassPrev: PropTypes.string,\n linkClassNext: PropTypes.string,\n linkClassLast: PropTypes.string,\n hideFirstLastPages: PropTypes.bool,\n getPageUrl: PropTypes.func,\n };\n\n static defaultProps = {\n itemsCountPerPage: 10,\n pageRangeDisplayed: 5,\n activePage: 1,\n prevPageText: \"⟨\",\n firstPageText: \"«\",\n nextPageText: \"⟩\",\n lastPageText: \"»\",\n innerClass: \"pagination pagiCustom justify-content-center mt-3\",\n itemClass: undefined,\n linkClass: undefined,\n activeLinkClass: undefined,\n hideFirstLastPages: false,\n getPageUrl: (i) => \"#\",\n };\n\n isFirstPageVisible(has_previous_page) {\n const {\n hideDisabled,\n // hideNavigation,\n hideFirstLastPages,\n } = this.props;\n if (hideFirstLastPages || (hideDisabled && !has_previous_page))\n return false;\n return true;\n }\n\n isPrevPageVisible(has_previous_page) {\n const { hideDisabled, hideNavigation } = this.props;\n if (hideNavigation || (hideDisabled && !has_previous_page)) return false;\n return true;\n }\n\n isNextPageVisible(has_next_page) {\n const { hideDisabled, hideNavigation } = this.props;\n if (hideNavigation || (hideDisabled && !has_next_page)) return false;\n return true;\n }\n\n isLastPageVisible(has_next_page) {\n const {\n hideDisabled,\n // hideNavigation,\n hideFirstLastPages,\n } = this.props;\n if (hideFirstLastPages || (hideDisabled && !has_next_page)) return false;\n return true;\n }\n\n buildPages() {\n const pages = [];\n const {\n itemsCountPerPage,\n pageRangeDisplayed,\n activePage,\n prevPageText,\n nextPageText,\n firstPageText,\n lastPageText,\n totalItemsCount,\n onChange,\n activeClass,\n itemClass,\n itemClassFirst,\n itemClassPrev,\n itemClassNext,\n itemClassLast,\n activeLinkClass,\n disabledClass,\n // hideDisabled,\n // hideNavigation,\n linkClass,\n linkClassFirst,\n linkClassPrev,\n linkClassNext,\n linkClassLast,\n // hideFirstLastPages,\n getPageUrl,\n } = this.props;\n\n const paginationInfo = new paginator(\n itemsCountPerPage,\n pageRangeDisplayed\n ).build(totalItemsCount, activePage);\n\n for (\n let i = paginationInfo.first_page;\n i <= paginationInfo.last_page;\n i++\n ) {\n pages.push(\n \n );\n }\n\n this.isPrevPageVisible(paginationInfo.has_previous_page) &&\n pages.unshift(\n \n );\n\n this.isFirstPageVisible(paginationInfo.has_previous_page) &&\n pages.unshift(\n \n );\n\n this.isNextPageVisible(paginationInfo.has_next_page) &&\n pages.push(\n \n );\n\n this.isLastPageVisible(paginationInfo.has_next_page) &&\n pages.push(\n \n );\n\n return pages;\n }\n\n render() {\n const pages = this.buildPages();\n return
      {pages}
    ;\n }\n}\n","import React from \"react\";\n\nconst Spinner = () => (\n
    \n
    \n Loading...\n
    \n
    \n);\n\nexport default Spinner;\n","import React from \"react\";\n\nconst writerDescription = ({ writer }) => {\n return (\n
    \n

    Your Favourite Author's Page

    \n {!writer.writerPhotoName ? null : (\n \n )}\n
    \n

    Please read below the articles written by him for NewAgeIslam.com

    \n
    \n );\n};\n\nexport default writerDescription;\n","import React from \"react\";\nimport Article from \"../components/article.list.component\";\nimport http from \"../http\";\nimport PaginationComp from \"../components/pagination.component\";\nimport Spinner from \"../components/UI/Spinner/Spinner.component\";\nimport WriterAbout from \"../components/writerDetail.component\";\nimport queryString from \"query-string\";\n\nclass ArticleList extends React.Component {\n state = {\n articles: [],\n totalCount: null,\n pageLimit: 15,\n currentPage: 1,\n heading: null,\n isShowGroupHeading: false,\n comments: [],\n isLoading: true,\n writerDescription: [],\n };\n\n componentDidMount() {\n const {\n match: { params },\n } = this.props;\n\n const { search } = this.props.location;\n const parseQuery = queryString.parse(search);\n\n const { writerId, sectionId, articleSlug } = params;\n this.getDataByParams(\n writerId,\n sectionId,\n parseQuery.page ? parseQuery.page : 1\n );\n this.setState({\n heading: articleSlug,\n isShowGroupHeading: writerId ? true : false,\n });\n }\n\n getDataByParams = async (authorId, groupId, page = 1) => {\n const { history, location } = this.props;\n this.setState({ currentPage: page });\n history.push({ pathname: location.pathname, search: `?page=${page}` });\n try {\n let params = {};\n if (authorId) {\n params = {\n authorId,\n page,\n };\n }\n\n if (groupId) {\n params = {\n groupId,\n page,\n };\n }\n const response = await http.get(\"/getArtilcesBy\", {\n params,\n });\n let heading = this.state.heading;\n if (groupId && response.data.results.length) {\n heading =\n response.data.results[response.data.results.length - 1][\"Group_Name\"];\n } else if (response.data.description.length) {\n heading = response.data.description[0][\"writerName\"];\n }\n this.setState({\n articles: response.data.results,\n totalCount: response.data.totalCount,\n pageLimit: response.data.pageLimit,\n comments: response.data.comments,\n isLoading: false,\n writerDescription: response.data.description,\n heading,\n });\n } catch (err) {\n console.log(err);\n }\n };\n\n onPageChanged = (data) => {\n const {\n match: { params },\n } = this.props;\n const { writerId, sectionId } = params;\n const currentPage = data;\n this.setState({\n articles: [],\n isLoading: true,\n });\n this.getDataByParams(writerId, sectionId, currentPage);\n };\n\n componentDidUpdate(prevProps) {\n const {\n match: { params },\n } = this.props;\n const { writerId, sectionId, articleSlug } = params;\n const { currentPage } = this.state;\n if (\n prevProps.match.params.writerId !== writerId ||\n prevProps.match.params.sectionId !== sectionId\n ) {\n this.setState({\n articles: [],\n isLoading: true,\n heading: articleSlug,\n });\n this.getDataByParams(writerId, sectionId, currentPage);\n }\n }\n\n render() {\n const {\n articles,\n totalCount,\n pageLimit,\n isShowGroupHeading,\n comments,\n isLoading,\n writerDescription,\n currentPage,\n } = this.state;\n\n let articleList = ;\n if (articles.length) {\n articleList = articles.map((article) => {\n return (\n \n );\n });\n } else if (!articles.length && !isLoading) {\n articleList =

    There is no data

    ;\n }\n return (\n
    \n
    \n

    {this.state.heading}

    \n
    \n
    \n {writerDescription.length && !isLoading ? (\n \n ) : null}\n {articleList}\n
    \n {!totalCount ? null : (\n \n }\n lastPageText={\n \n }\n prevPageText={\n \n }\n nextPageText={\n \n }\n activePage={+currentPage}\n itemsCountPerPage={pageLimit}\n totalItemsCount={totalCount}\n onChange={this.onPageChanged}\n itemClass=\"page-item\"\n linkClass=\"page-link\"\n />\n )}\n
    \n );\n }\n}\n\nexport default ArticleList;\n","import React from \"react\";\nclass About extends React.Component {\n\n render() {\n return (\n \n
    \n
    \n

    ABOUT US IN A NUTSHELL

    \n
    \n
    \n {/*

    */}\n

    The idea of a free media is one that we at NewAgeIslam.com hold in the highest regard. We believe in bringing our site visitors, readers and audio listeners or video viewers the widest possible array of information that comes to our notice in regard to the trials and tribulations of the Muslim community all over the world in their bid to adapt to the fast-changing circumstances of the Twenty-first century and anything else that we deem my be of interest to or necessary for our readers and viewers. We trust our worldwide readership and audience, and believe them to be fully-capable of making their own decisions and discerning their own realities, regardless of our editors’ or contributors’ interventions on one side of a certain argument or the other. We want Muslims to recognise while holding any discussion that two-thirds of humanity, at lest, does not agree with us, in fact most Muslims themselves hold very different opinions from other Muslims and subscribe to different schools of thoughts in interpreting their scriptures and in their responses to current word events. Clearly there is no point in considering one’s own view as final and applicable to the entire Muslim community, even to one’s own sect or sub-sect, or more vainly, all humanity.

    \n\n

    Is there something we can do about it? Perhaps, not much! It is too gigantic a task for us to undertake with our meagre resources. But do we have the option to do nothing, just ‘stand and stare’? We don’t think so. There is a large body of Muslims all over the world that we know feels more or less the same way as we do. The internet gives us a facility: we can try and bring many such people together either on one platform or at least link many of the individual platforms of like-minded people that already exist.

    \n

    By establishing and running this website we aim at the following:

    \n
      \n
    • Encourage serous rethinking about all Islamic postulates, point by point, in the light of our requirements today in the 21st century. Ijtihad is something we have ignored for centuries; obscurantist sections of our society have sought to keep us mired in hoary tradition and mere rituals. The task before us is, literally, to create a New Age Islam.
    • \n
    • Keep the world Muslim community informed of all that is going on in the Muslim world so that they can take informed decisions. Not every body can keep track of all the events that impact us deeply as a community or monitor the world media day after day. We will endeavour to keep the community informed of the challenges facing us in different parts of the world and how our co-religionists are coping with them and if there is something we can contribute by way of advice.
    • \n
    • Encourage a debate with our educated youth which seems to be going astray and becoming a prey to misguided ideologies and participating in activities that is endangering the lives of other Muslims and the work entrusted to us, that of spreading enlightenment. We simply cannot allow our own children to fall prey to these forces of darkness and Jahiliya, who are endangering the community for their own petty gains and for furthering their own political and other objectives.
    • \n
    • Above all, to keep reminding ourselves of the rich spiritual traditions of tolerance and pluralism and multi-culturalism that we have inherited. It is indeed strange for any one who has inherited the following thoughts and traditions to be considered a bigot. Let me remind us of some of these right here.
    • \n\n
    \n

    All mankind is from Adam and Eve (Hawwa), an Arab has no superiority over a non-Arab nor a non-Arab has any superiority over an Arab; also a white has no superiority over a black nor a black has any superiority over a white - EXCEPT BY PIETY AND GOOD ACTION Do not therefore do injustice to yourselves. Remember one day you will meet Allah and answer your deeds. So beware: do not stray from the path of righteousness after I am gone.

    \n

    The Last Sermon Of The Prophet (PBUH)

    \n

    Kaabe mein butkade mein hai yeksan teri zia Mein imtiaze dairo haram mein phansa raha

    \n

    (The divine light equally illuminates the Kaaba and the house of idols (temple), but woe to me that I remained obsessed with the differences and distinctions between the two)

    \n

    -------Allama Iqbal

    \n

    \"I died as a mineral and became a plant,

    \n

    I died as plant and rose to animal,

    \n

    I died as animal and I was man.

    \n

    Why should I fear?

    \n

    When was I less by dying?

    \n

    Yet Once more I shall die as Man,

    \n

    To soar with angels blest;

    \n

    But even from angelhood I must pass on.

    \n

    After that, soaring higher than angels,

    \n

    What you cannot imagine I shall be that.\"

    \n

    -----Hazrat Jalaluddin Rumi

    \n

    Another great mystic Mansur al-Hallaj, famous for his formulation, Anal Haq (I am The Truth: Aham Brahmo Asmi) wrote:

    \n

    Like the herbage I have sprung up many a time On the banks of flowing rivers. For a hundred thousand years I have lived and worked In every sort of body.\"

    \n

    ------Mansur al-Hallaj

    \n

    And Read Rumi again:

    \n

    There's a strange frenzy in my head, Of birds flying, Each particle circulating on its own! Is the one I love everywhere? (The Essential Rumi, p. 4)

    \n

    Lo, I am with you always means when you look for God, God is in the look of your eyes, in the thought of looking, nearer to you than yourself, or things that have happened to you. There's no need to go outside. Be melting snow. Wash yourself of yourself. (The Essential Rumi, p. 13)

    \n

    What do we mean by saying that God is not in heaven? We do not mean that He is not in heaven, but that heaven cannot encompass Him. He encompasses heaven. He has an ineffable connection with heaven just as He has an ineffable connection with you. Everything is in His omnipotent hands; everything is a manifestation of Him and subject to His control. So, He is not outside the heavens and the universe but is not totally inside them either, that is, they do not encompass Him but He encompasses them totally. Someone asked where God was before the earth, skies, and Divine Throne existed. We said that the question was invalid from the outset because God is by definition that which has no place.

    \n

    (Signs of the Unseen: The Discourses of Jalaluddin Rumi, p. 221)

    \n

    -----Hazrat Jalaluddin Rumi

    \n

    Having inherited such grand thoughts and such broadmindedness, such concern for pluralism and equality of mankind, all its races and nationalities, Justice for all, concern for rights of not only all humans but also animals and plants, it seems strange today for a Muslim to be equated with the likes of Osama bin laden and Ayman al-Zawahiri who do not mind destroying the image of Islam as a religion of peace and submission to God and killing even Muslims, not to speak of other innocent human beings for the sake of furthering their own political ambitions and satisfying their own urges for vengeance against the authorities that may have hurt them some time in the past in some way. In today’s world where misunderstandings about Islam abound, we just have to try and bring the focus back on the essential concepts in Islamic thought – peace, contempt for aggression, submission to God and acceptance of all situations as having come from God, prayer, mercy, forgiveness as a cure for all spiritual and physical ills, reason, the spirit of inquiry, social justice and individual responsibility.

    \n

    For any clarification Please write to:

    \n

    Sultan Shahin,

    \n Editor@NewAgeIslam.com\n
    \n
    \n
    \n )\n }\n}\n\n\nexport default About;","import React from \"react\";\nimport SubscribeForm from \"../components/subscribe.form.component\";\n\nclass Subscribepage extends React.Component {\n\n render() {\n return (\n \n
    \n
    \n

    Subscribe to Our Newsletters

    \n
    \n
    \n \n
    \n
    \n
    \n )\n }\n}\n\n\nexport default Subscribepage;","import React from \"react\";\nimport { formatDateTime, checkContentIsUrdu, decodeHtml } from \"../utility\";\n\nconst CommentDetail = ({ comments, CommentsCount }) => {\n let commentHtml = (\n
    There is no comments for this Article
    \n );\n if (comments.length) {\n commentHtml = comments.map(\n ({ Comments, Name, Comments_ID, CreatedDateTime }) => {\n return (\n
  • \n \n \n {`By ${Name} `}\n {\" \"}\n {formatDateTime(CreatedDateTime)}\n \n
  • \n );\n }\n );\n }\n return (\n
    \n
    \n

    \n Total Comments ({CommentsCount})\n

    \n {/* Write a Comment */}\n
    \n
      \n {commentHtml}\n
    \n
    \n );\n};\n\nexport default CommentDetail;\n","import React from \"react\";\nimport ReCAPTCHA from \"react-google-recaptcha\";\nimport http from \"../http\";\n// import RichTextEditor from \"react-rte\";\n// import PropTypes from \"prop-types\";\nimport { Editor } from \"@tinymce/tinymce-react\";\n\nclass CommentForm extends React.Component {\n constructor(props, context) {\n super(props, context);\n this.verifyCallback = this.verifyCallback.bind(this);\n this.onExpired = this.onExpired.bind(this);\n this.state = {\n buttonDisabled: true,\n articleId: props.ArticleID,\n comment: {\n name: \"\",\n email: \"\",\n comments: \"\",\n recaptchaToken: null,\n },\n message: \"\",\n type: \"success\",\n loading: false,\n };\n }\n componentDidMount() {\n if (this.captchaDemo) {\n // console.log(\"started, just a second...\");\n this.captchaDemo.reset();\n }\n }\n\n onChange = (value) => {\n const commentObj = { ...this.state.comment };\n commentObj[\"comments\"] = value;\n this.setState({ ...this.state, comment: commentObj });\n if (this.props.onChange) {\n // Send the changes up to the parent component as an HTML string.\n // This is here to demonstrate using `.toString()` but in a real app it\n // would be better to avoid generating a string on each change.\n this.props.onChange(this.state.comment.comments.toString(\"html\"));\n }\n };\n\n onExpired() {\n const commentObj = { ...this.state.comment };\n commentObj[\"recaptchaToken\"] = null;\n this.setState({ buttonDisabled: true, comment: commentObj });\n }\n\n verifyCallback(recaptchaToken) {\n if (recaptchaToken) {\n // Here you will get the final recaptchaToken!!!\n // console.log(recaptchaToken, \"<= your recaptcha token\");\n const commentObj = { ...this.state.comment };\n commentObj[\"recaptchaToken\"] = recaptchaToken;\n this.setState({\n buttonDisabled: !this.state.buttonDisabled,\n comment: commentObj,\n });\n }\n }\n\n onInputChange = (e) => {\n const commentObj = { ...this.state.comment };\n commentObj[e.target.name] = e.target.value;\n this.setState({ ...this.state, comment: commentObj });\n };\n\n onFormSubmit = (e) => {\n e.preventDefault();\n const { name, email, comments, recaptchaToken } = this.state.comment;\n const commentHtml = comments.toString(\"html\");\n if (!name || name.trim() === \"\") {\n return;\n }\n if (!email || email.trim() === \"\") {\n return;\n }\n if (!commentHtml || commentHtml.trim() === \"\") {\n return;\n }\n this.setState({ ...this.state, loading: true });\n http\n .post(`/addComments/${this.state.articleId}`, {\n Name: name,\n Email: email,\n Comment: commentHtml,\n recaptchaToken,\n })\n .then((res) => {\n this.setState({\n ...this.state,\n comment: {\n name: \"\",\n email: \"\",\n comments: \"\",\n recaptchaToken: null,\n },\n type: \"success\",\n message:\n \"You comment has been sent to the editors for approval. It will be posted as soon as possible.\",\n loading: false,\n });\n })\n .catch((err) => {\n this.setState({\n type: \"fail\",\n ...this.state,\n comment: {\n name: \"\",\n email: \"\",\n comments: \"\",\n recaptchaToken: null,\n },\n message:\n \"Due to some internal error this comment was not submitted. Please try after some time .\",\n loading: false,\n });\n });\n };\n\n render() {\n const toolbarConfig = {\n forced_root_block : '',\n theme: \"silver\",\n branding: false,\n menubar: false,\n plugins: [\n \"advlist autolink lists image charmap print preview\",\n \"insertdatetime media table paste code help wordcount\",\n ],\n toolbar: `undo redo | formatselect | bold italic | \\\n bullist numlist | help`,\n };\n const { message, type } = this.state;\n return (\n
    \n
    \n

    \n Compose your comments here\n

    \n \n {\" \"}\n Total Comments ({this.props.CommentsCount})\n \n
    \n
    \n {message ? (\n \n {message}\n
    \n ) : null}\n
    \n \n \n
    \n
    \n \n \n
    \n
    \n \n \n
    \n
    \n {\n this.captchaDemo = el;\n }}\n // size=\"invisible\"\n // render=\"explicit\"\n onExpired={this.onExpired}\n sitekey=\"6LfEvvMUAAAAACv2N_9kkeAPiIgLhkeMRV93NLow\"\n onChange={this.verifyCallback}\n />\n
    \n \n {this.state.loading ? \"Submitting..\" : \"Submit\"}\n \n
    \n \n Disclaimer: The opinions expressed in the\n articles and comments are the opinions of the authors and do not\n necessarily reflect that of NewAgeIslam.com\n \n
    \n \n \n );\n }\n}\n\nexport default CommentForm;\n","import React from \"react\";\nimport {\n FacebookShareButton,\n FacebookIcon,\n WhatsappShareButton,\n WhatsappIcon,\n LinkedinIcon,\n // PinterestIcon,\n // PinterestShareButton,\n TwitterIcon,\n TwitterShareButton,\n LinkedinShareButton,\n // TelegramIcon,\n // TelegramShareButton,\n EmailShareButton,\n EmailIcon,\n RedditIcon,\n RedditShareButton,\n // LivejournalIcon,\n // LivejournalShareButton,\n // PocketIcon,\n // PocketShareButton,\n // ViberIcon,\n // ViberShareButton,\n TumblrIcon,\n TumblrShareButton,\n // WeiboIcon,\n // WeiboShareButton,\n // LineIcon,\n // LineShareButton,\n // WorkplaceIcon,\n // WorkplaceShareButton,\n // VKIcon,\n // VKShareButton,\n // InstapaperIcon,\n // InstapaperShareButton,\n} from \"react-share\";\n\nconst Share = ({ url, content, hashtag }) => {\n return (\n
    \n \n \n \n \n \n \n \n \n \n \n \n \n {/* \n \n \n \n \n */}\n \n \n \n {/* \n \n \n \n \n \n \n \n */}\n \n \n \n \n \n \n {/* \n \n \n \n \n \n \n \n \n \n \n \n \n \n */}\n
    \n );\n};\n\nexport default Share;\n","import React from \"react\";\nimport { withRouter, Link } from \"react-router-dom\";\n// import rabbiImg from \"../assets/images/newageislam-dummy.jpg\";\nimport CommentListDetail from \"./comment-detail-component\";\nimport ArticleCommentForm from \"./comment-form.component\";\nimport ShareComponent from \"./shareComponent\";\nconst Detail = ({ article, history }) => {\n const {\n Article_Heading,\n // AutherName,\n Group_Name,\n ArticleContent,\n // ImageName,\n // ImageCaption,\n comments,\n Article_ID,\n Group_ID,\n CreatedDateTime,\n totalComments,\n } = article;\n const monthArr = [\n \"Jan\",\n \"Feb\",\n \"March\",\n \"Apr\",\n \"May\",\n \"Jun\",\n \"Jul\",\n \"Aug\",\n \"Sept\",\n \"Oct\",\n \"Nov\",\n \"Dec\",\n ];\n const sharedUrl = window.location.host.includes(\"localhost\")\n ? `http://newageislam.com/${history.createHref(history.location)}`\n : window.location.href;\n const onViewAllComments = (articleId) => {\n history.push(`/viewComments/${articleId}`);\n };\n const DateStr = new Date(CreatedDateTime.split(\"T\")[0]);\n return (\n
    \n
    \n

    \n {Group_Name}{\" \"}\n \n ( {DateStr.getDate()} {monthArr[DateStr.getMonth()]}{\" \"}\n {DateStr.getFullYear()}\n {\"\"}, NewAgeIslam.Com)\n \n

    \n \n Comment\n {\" \"}\n |\n \n Comment\n \n
    \n
    \n
    \n \n
    \n \n

    {Article_Heading}

    \n No Content available fo this article

    \",\n }}\n >
    \n
    \n \n
    \n
    \n \n Donate Now{\" \"}\n \n
    \n
    \n \n \n \n
    \n onViewAllComments(Article_ID)}\n >\n View All Comments ({totalComments})\n \n
    \n \n );\n};\n\nexport default withRouter(Detail);\n","import React, { useEffect, useState } from \"react\";\nimport { withRouter } from \"react-router-dom\";\nimport Spinner from \"../components/UI/Spinner/Spinner.component\";\nimport Detail from \"../components/detail.component\";\nimport http from \"../http\";\n\nconst ArticleDetail = ({ match }) => {\n const { articleID } = match.params;\n const [data, setData] = useState([]);\n useEffect(() => {\n const fetchData = async () => {\n try {\n const result = await http.get(`/article/${articleID}`);\n setData(result.data);\n } catch (err) {\n console.log(err);\n }\n };\n fetchData();\n }, [articleID]);\n const content = !data.length ? : ;\n return content;\n};\nexport default withRouter(ArticleDetail);\n","import React from \"react\";\nimport Article from \"../components/article.list.component\";\nimport http from \"../http\";\nimport PaginationComp from \"../components/pagination.component\";\nimport Spinner from \"../components/UI/Spinner/Spinner.component\";\nimport queryString from \"query-string\";\n\nclass latestArticles extends React.Component {\n state = {\n articles: [],\n pageLimit: 15,\n currentPage: 1,\n totalCount: null,\n heading: \"Latest Articles\",\n comments: [],\n };\n componentDidMount() {\n const { search } = this.props.location;\n const parseQuery = queryString.parse(search);\n this.getDataByParams(parseQuery.page ? parseQuery.page : 1);\n }\n getDataByParams = async (page = 1) => {\n const { history, location } = this.props;\n this.setState({ currentPage: page });\n history.push({ pathname: location.pathname, search: `?page=${page}` });\n try {\n let params = {\n view: \"list\",\n page,\n };\n const response = await http.get(\"/latestArticles\", {\n params,\n });\n this.setState({\n articles: response.data.results,\n pageLimit: response.data.pageLimit,\n totalCount: response.data.totalCount,\n comments: response.data.comments,\n });\n } catch (err) {\n console.log(err);\n }\n };\n\n onPageChanged = (data) => {\n const currentPage = data;\n this.setState({\n articles: [],\n });\n this.getDataByParams(currentPage);\n };\n render() {\n const {\n articles,\n totalCount,\n pageLimit,\n comments,\n currentPage,\n } = this.state;\n let articleList = ;\n if (articles.length) {\n articleList = articles.map((article) => {\n return (\n \n );\n });\n }\n return (\n
    \n
    \n

    {this.state.heading}

    \n
    \n
    {articleList}
    \n {!totalCount ? null : (\n \n }\n lastPageText={\n \n }\n prevPageText={\n \n }\n nextPageText={\n \n }\n activePage={+currentPage}\n itemsCountPerPage={pageLimit}\n totalItemsCount={totalCount}\n onChange={this.onPageChanged}\n itemClass=\"page-item\"\n linkClass=\"page-link\"\n />\n )}\n
    \n );\n }\n}\n\nexport default latestArticles;\n","import React from \"react\";\nimport Article from \"../components/article.list.component\";\nimport http from \"../http\";\nimport PaginationComp from \"../components/pagination.component\";\nimport Spinner from \"../components/UI/Spinner/Spinner.component\";\nimport queryString from \"query-string\";\n\nclass popularArticles extends React.Component {\n state = {\n articles: [],\n pageLimit: 15,\n currentPage: 1,\n totalCount: null,\n heading: \"Popular Articles\",\n comments: [],\n };\n componentDidMount() {\n const { search } = this.props.location;\n const parseQuery = queryString.parse(search);\n this.getDataByParams(parseQuery.page ? parseQuery.page : 1);\n }\n getDataByParams = async (page = 1) => {\n const { history, location } = this.props;\n this.setState({ currentPage: page });\n history.push({ pathname: location.pathname, search: `?page=${page}` });\n try {\n let params = {\n view: \"list\",\n page,\n };\n const response = await http.get(\"/getMostPopularArticles\", {\n params,\n });\n this.setState({\n articles: response.data.results,\n pageLimit: response.data.pageLimit,\n totalCount: response.data.totalCount,\n comments: response.data.comments,\n });\n } catch (err) {\n console.log(err);\n }\n };\n\n onPageChanged = (data) => {\n const currentPage = data;\n this.getDataByParams(currentPage);\n };\n render() {\n const {\n articles,\n totalCount,\n pageLimit,\n comments,\n currentPage,\n } = this.state;\n let articleList = ;\n if (articles.length) {\n articleList = articles.map((article) => {\n return (\n \n );\n });\n }\n return (\n
    \n
    \n

    {this.state.heading}

    \n
    \n
    {articleList}
    \n {!totalCount ? null : (\n \n }\n lastPageText={\n \n }\n prevPageText={\n \n }\n nextPageText={\n \n }\n activePage={+currentPage}\n itemsCountPerPage={pageLimit}\n totalItemsCount={totalCount}\n onChange={this.onPageChanged}\n itemClass=\"page-item\"\n linkClass=\"page-link\"\n />\n )}\n
    \n );\n }\n}\n\nexport default popularArticles;\n","import React from \"react\";\nimport LiTag from \"../components/UI/liTag/liTag\";\nimport { GetUrlLink } from \"../utility\";\n\nconst commentSection = ({\n Comments_ID,\n Article_Heading,\n Comments,\n Name,\n GROUP_NAME,\n Articles_ID\n}) => (\n \n
    \n
    \n

    \n \n {Article_Heading}\n \n

    \n
    \n {`By ${Name}`}\n \n Read More \n \n
    \n \n
    \n);\n\nexport default commentSection;\n","import React from \"react\";\nimport CommentSection from \"../components/comment.component\";\nimport http from \"../http\";\nimport PaginationComp from \"../components/pagination.component\";\nimport Spinner from \"../components/UI/Spinner/Spinner.component\";\nimport queryString from \"query-string\";\n\nclass latestComments extends React.Component {\n state = {\n comments: [],\n pageLimit: 15,\n currentPage: 1,\n totalCount: null,\n heading: \"Latest Comments\",\n };\n componentDidMount() {\n const { search } = this.props.location;\n const parseQuery = queryString.parse(search);\n this.getDataByParams(parseQuery.page ? parseQuery.page : 1);\n }\n getDataByParams = async (page = 1) => {\n const { history, location } = this.props;\n this.setState({ currentPage: page });\n history.push({ pathname: location.pathname, search: `?page=${page}` });\n try {\n let params = {\n view: \"list\",\n page,\n };\n const response = await http.get(\"/latestComments\", {\n params,\n });\n this.setState({\n comments: response.data.results,\n pageLimit: response.data.pageLimit,\n totalCount: response.data.totalCount,\n });\n } catch (err) {\n console.log(err);\n }\n };\n\n onPageChanged = (data) => {\n const currentPage = data;\n this.setState({\n comments: [],\n });\n this.getDataByParams(currentPage);\n };\n render() {\n const { comments, totalCount, pageLimit, currentPage } = this.state;\n let articleList = ;\n if (comments.length) {\n articleList = comments.map((comment) => {\n return (\n \n );\n });\n }\n return (\n
    \n
    \n

    {this.state.heading}

    \n
    \n
    \n
      {articleList}
    \n
    \n {!totalCount ? null : (\n \n }\n lastPageText={\n \n }\n prevPageText={\n \n }\n nextPageText={\n \n }\n activePage={+currentPage}\n itemsCountPerPage={pageLimit}\n totalItemsCount={totalCount}\n onChange={this.onPageChanged}\n itemClass=\"page-item\"\n linkClass=\"page-link\"\n />\n )}\n
    \n );\n }\n}\n\nexport default latestComments;\n","import React from \"react\";\nconst videoSection = ({ video }) => (\n
    \n
    \n {video.map(({ ID, YOUTUBE_LINK, TITLE }) => {\n return (\n \n {/*

    {TITLE}

    */}\n
    \n \n
    \n
    \n );\n })}\n
    \n
    \n);\n\nexport default videoSection;\n","import React from \"react\";\nimport VideoSection from \"../components/video.component\";\nimport http from \"../http\";\nimport PaginationComp from \"../components/pagination.component\";\nimport Spinner from \"../components/UI/Spinner/Spinner.component\";\nimport queryString from \"query-string\";\n\nclass latestVideos extends React.Component {\n state = {\n videos: [],\n pageLimit: 15,\n currentPage: 1,\n totalCount: null,\n heading: \"Latest Videos\",\n };\n componentDidMount() {\n const { search } = this.props.location;\n const parseQuery = queryString.parse(search);\n this.getDataByParams(parseQuery.page ? parseQuery.page : 1);\n }\n getDataByParams = async (page = 1) => {\n const { history, location } = this.props;\n this.setState({ currentPage: page });\n history.push({ pathname: location.pathname, search: `?page=${page}` });\n\n try {\n let params = {\n view: \"list\",\n page,\n };\n const response = await http.get(\"/getVideos\", {\n params,\n });\n\n this.setState({\n videos: response.data.results,\n pageLimit: response.data.pageLimit,\n totalCount: response.data.totalCount,\n });\n } catch (err) {\n console.log(err);\n }\n };\n\n onPageChanged = (data) => {\n const currentPage = data;\n this.setState({\n videos: [],\n });\n this.getDataByParams(currentPage);\n };\n render() {\n const { videos, totalCount, pageLimit, currentPage } = this.state;\n let articleList = ;\n if (videos.length) {\n articleList = videos.map((video, keyIndex) => {\n return ;\n });\n }\n return (\n
    \n
    \n

    {this.state.heading}

    \n
    \n
    {articleList}
    \n {!totalCount ? null : (\n \n }\n lastPageText={\n \n }\n prevPageText={\n \n }\n nextPageText={\n \n }\n activePage={+currentPage}\n itemsCountPerPage={pageLimit}\n totalItemsCount={totalCount}\n onChange={this.onPageChanged}\n itemClass=\"page-item\"\n linkClass=\"page-link\"\n />\n )}\n
    \n );\n }\n}\n\nexport default latestVideos;\n","import React from \"react\";\nclass Privacypolicy extends React.Component {\n\n render() {\n return (\n \n
    \n
    \n

    NEW AGE ISLAM PRIVACY POLICY STATEMENT

    \n
    \n
    \n {/*

    Disclaimer regarding content and data

    */}\n

    Thank you for visiting NewAgeIslam.com, the website that seeks to map an agenda for Islam in the Twenty First century. Our privacy policy is straightforward. We respect your privacy and do not collect personal information about you when you visit our website unless you volunteer to provide that information to us.

    \n

    New Age Islam guarantees that we will never, under any circumstances, sell, trade or make public your personal information, unless you designate otherwise. All personal information you provide will remain confidential. In addition, you always will have the option to edit the information provided to us or to have your personal information removed from our records.

    \n

    After signing up online, users will receive email newsletters and other occasional announcements from New Age Islam. In order to distribute our email, we collect subscribers' email addresses. We do not share addresses with other companies or partners. Users can unsubscribe from email newsletters at any time.

    \n\n

    Discussion Forums

    \n

    New Age Islam makes discussion forums available to its users. Please remember any information disclosed in these areas becomes publicly available, and therefore you should exercise caution when disclosing personal information.

    \n\n

    Unsubscribe, Data Removal and Data Modification Policies

    \n

    New Age Islam allows users to opt-out of receiving newsletters and other communications from us and to modify or remove their information from our system.

    \n\n

    Other Disclosure of Personal Information

    \n

    New Age Islam will not use or disclose your personal information without your consent, except (i) as described in this privacy policy or (ii) as required by law, court order or as requested by other government or law enforcement authority. This policy does not protect information you post to any online bulletin board or other public forum within our website.

    \n\n

    Linking to Other Sites

    \n

    New Age Islam contains links to other sites. We are not responsible for the privacy practices or the content of such websites. You must check their privacy policies before using those sites.

    \n\n

    Contacting New Age Islam

    \n

    If you have any questions about this privacy policy statement, the practices of this site or your dealings with this website, you can contact info@newageislam.com

    \n\n

    New Age Islam reserves the right to amend this Privacy Policy Statement at any time without notice, and only the current Privacy Policy Statement may be deemed effective.

    \n
    \n
    \n
    \n )\n }\n}\n\n\nexport default Privacypolicy;","import React from \"react\";\nclass Advertise extends React.Component {\n\n render() {\n return (\n \n
    \n
    \n

    Advertise

    \n
    \n
    \n

    Audience

    \n

    NewAgeIslam.com has a very focused audience which reads extensively and aims to learn on Islam and Muslims in relation to the world affairs. Most of our visitors and commentators look for information, seek answers to their questions in our 13000+ articles or debate over them.

    \n\n

    Advertising Options

    \n

    BannersThe following sizes are available: 125×125, 120×600, and 160×600. The banners are not rotated with other advertisers.

    \n

    ReviewIf your product or service is interesting to our readers, we may review it on our website.

    \n

    NewsletterA banner or review of your product or service can also appear in our newsletter.

    \n \n

    Contact Us For Rates and Availability

    \n

    Please email us to sultan.shahin@gmail.com for request for proposal and pricing information if you are interested in advertising with us.

    \n
    \n
    \n
    \n )\n }\n}\n\n\nexport default Advertise;","import React from \"react\";\nclass Donate extends React.Component {\n\n render() {\n return (\n \n
    \n
    \n

    Donate

    \n
    \n
    \n

    YOUR SUPPORT HELPS US TO COMBAT RADICAL THOUGHT AND EXTREMISM!

    \n

    New Age Islam Foundation would utilize your donations to expand the outreach of its website and improve the quality of its content. As a reader supported independent source of news and views, your financial support is critical to our continued success.

    \n

    Thank you for your decision to support NewAgeIslam.com

    \n

    We are based in India and Indian laws require us to make distinctions between different bank accounts of donors. So please choose different methods based on whether you want to donate from an Indian or a foreign bank account.

    \n

    Donate Now

    \n
    1. Indian or foreign citizens resident in India having Indian Bank accounts
    \n

    For remittance from Indian Bank accounts, Donate by Cheque:

    \n

    A) Please send a cheque drawn on any Indian Bank Account to

    \n
    New Age Islam Foundation,
    \n E-22, Indra Prastha Apts.,
    \n 114, I. P. Extension,
    \n New Delhi – 110092.
    \n

    B) Direct Bank Transfer to

    \n

    India Savings a/c of New Age Islam Foundation
    \n Bank A/C NO: 09 22 145 00 000 66
    \n IFSC code: HDFC 00 00 922
    \n Swift Code: HDFCINNBB

    \n

    As your donation is tax deductible, we will send you a copy of our certificate issued u/s 80 G of the Act along with the receipt. Please send us your postal address.

    \n\n

    2. Non-resident Indians and foreign citizens having foreign Bank accounts

    \n\n

    For foreign Bank remittance, Current Account of the New Age Islam Foundation
    \n HDFC Bank Ltd
    \n A/C No: 09 22 76 000 000 12
    \n Swift Code: HDFCINNBB
    \n IFSC code: HDFC 00 00 922

    \n\n Postal Address of the Bank:
    \n\n HDFC Bank Ltd
    \n Plot no 2, RG Shopping complex
    \n I.P. Extension,
    \n New Delhi 110092

    \n\n Postal address of the Donee:

    \n New Age Islam Foundation
    \n c/o Sultan Shahin
    \n E-22, Indra Prastha Apts.
    \n 114, I. P. Extension
    \n New Delhi - 110092

    \n

    We are working out other modes of payment through credit cards, etc. We will inform you as soon as possible.

    \n
    \n
    \n
    \n )\n }\n}\n\n\nexport default Donate;","import React from \"react\";\nimport { Link } from \"react-router-dom\";\nconst sidebarInnerPage = (pros) => {\n return (\n \n );\n};\n\nexport default sidebarInnerPage;\n","import React from \"react\";\nimport articleimg from \"../assets/images/newageislam-dummy.jpg\";\nimport { GetUrlLink, formatDateTime, checkImageExists } from \"../utility\";\nconst searchResults = ({ data }) => {\n if (!data.length) {\n return

    No results found

    ;\n }\n return data.map(\n ({\n Article_ID,\n Group_Name,\n Article_Heading,\n AutherName,\n Article_Detail,\n ImageName,\n CreatedDateTime,\n Comments,\n Comments_ID,\n Name,\n }) => {\n let parsedADetail = Comments\n ? Comments.replace(/<[^>]+>/g, \"\")\n : Article_Detail.replace(/<[^>]+>/g, \"\");\n let ADetail =\n parsedADetail.length > 450\n ? parsedADetail.substring(0, 450) + \"..\"\n : parsedADetail;\n return (\n \n
    \n {ImageName &&\n ImageName !== \"NAI_NewAgeIslam.jpg\" &&\n ImageName !== \"NAI_NewAgeIslam.png\" ? (\n checkImageExists(ImageName, AutherName)\n ) : (\n \n )}\n
    \n

    {Group_Name}

    \n

    \n {AutherName ? (\n \n {Article_Heading}\n \n ) : (\n \n {Article_Heading}\n \n )}\n

    \n \n {AutherName}\n \n {CreatedDateTime ? (\n \n Posted : {formatDateTime(CreatedDateTime)}\n \n ) : null}\n

    \n {Name ? Posted By : {Name} : null}\n

    \n URL:\n {AutherName\n ? `${window.location.origin}/${GetUrlLink(\n Group_Name\n )}/${GetUrlLink(AutherName)}/${GetUrlLink(\n Article_Heading\n )}/d/${Article_ID}`\n : `${window.location.origin}/${GetUrlLink(\n Group_Name\n )}/${GetUrlLink(Article_Heading)}/d/${Article_ID}`}\n

    \n {AutherName ? (\n \n Read More \n \n ) : (\n \n Read More \n \n )}\n
    \n
    \n \n );\n }\n );\n};\nexport default searchResults;\n","import React from \"react\";\nimport queryString from \"query-string\";\nimport http from \"../http/index\";\nimport Spinner from \"../components/UI/Spinner/Spinner.component\";\nimport SearchResults from \"../components/searchResults.component\";\n\nclass Search extends React.Component {\n state = {\n searchText: \"\",\n searchResuts: [],\n loading: true,\n searchIn: \"1\",\n };\n componentDidMount() {\n const { search } = this.props.location;\n const parseQuery = queryString.parse(search);\n if (!parseQuery.searchKey) {\n this.props.history.push(\"/\");\n }\n this.setState({ searchText: parseQuery.searchKey }, () => {\n this.getSearchResults();\n });\n }\n getSearchResults = async () => {\n const { searchText, searchIn } = this.state;\n try {\n this.props.history.push({ search: `?searchKey=${searchText}` });\n const result = await http.get(\"/searchByResults\", {\n params: { searchText, searchIn },\n });\n this.setState({ searchResuts: result.data.results, loading: false });\n } catch {\n this.setState({ searchResuts: [], loading: false });\n }\n };\n handleChange = (e) => {\n this.setState({ [e.target.name]: e.target.value });\n };\n handleSubmit = (e) => {\n e.preventDefault();\n this.setState({ loading: true });\n this.getSearchResults();\n };\n render() {\n const { searchText, searchResuts, loading, searchIn } = this.state;\n return (\n
    \n
    \n

    Search Form

    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n this.handleChange(e)}\n type=\"text\"\n className=\"form-control\"\n placeholder=\"search text\"\n name=\"searchText\"\n value={searchText}\n />\n
    \n \n
    \n
    \n
    \n
    \n {loading ? : }\n
    \n
    \n );\n }\n}\n\nexport default Search;\n","import React, { useEffect, useState } from \"react\";\nimport http from \"../http\";\nimport CommentDetail from \"../components/comment-detail-component\";\nimport Spinner from \"../components/UI/Spinner/Spinner.component\";\n\nconst ViewComments = ({ match }) => {\n const [data, setData] = useState([]);\n const [commentsCount, setCommentsCount] = useState(null);\n const { articleID } = match.params;\n useEffect(() => {\n loadPageData(articleID);\n }, [articleID]);\n const loadPageData = async (articleID) => {\n try {\n const result = await http.get(`/comments/${articleID}`);\n setData(result.data.comments);\n setCommentsCount(result.data.totalCounts);\n } catch (err) {}\n };\n return (\n
    \n
    \n

    \n {!data.length ? \"Loading...\" : data[0][\"GROUP_NAME\"]}\n

    \n
    \n
    \n

    \n {\" \"}\n {!data.length ? null : data[0][\"Article_Heading\"]}\n

    \n {!data.length ? (\n \n ) : (\n \n )}\n
    \n
    \n );\n};\n\nexport default ViewComments;\n","import React from \"react\";\nimport http from \"../http\";\nimport PaginationComp from \"../components/pagination.component\";\nimport Spinner from \"../components/UI/Spinner/Spinner.component\";\nimport Article from \"../components/article.list.component\";\nimport queryString from \"query-string\";\n\nclass Archive extends React.Component {\n state = {\n monthOptions: [],\n articles: [],\n pageLimit: 15,\n currentPage: 1,\n totalCount: null,\n isLoading: true,\n selectedDuration: \"\",\n comments: [],\n };\n\n getMonths = async () => {\n const months = await http.get(\"/getMonths\");\n this.setState({ monthOptions: months.data });\n };\n componentDidMount() {\n let date = new Date().toDateString();\n let dateArr = date.split(\" \");\n let monthYear = `${dateArr[1]} ${dateArr[3]}`;\n this.getMonths();\n const { search } = this.props.location;\n const parseQuery = queryString.parse(search);\n this.getDataByParams(\n parseQuery.monthYear ? parseQuery.monthYear : monthYear,\n parseQuery.page ? parseQuery.page : 1\n );\n }\n\n getDataByParams = async (monthYear = null, page = 1) => {\n const { history, location } = this.props;\n history.push({\n pathname: location.pathname,\n search: `?monthYear=${monthYear}&page=${page}`,\n });\n this.setState({\n articles: [],\n isLoading: true,\n currentPage: page,\n selectedDuration: monthYear,\n });\n try {\n let params = {\n monthYear,\n page,\n };\n const response = await http.get(\"/getArticlesByMonths\", {\n params,\n });\n this.setState({\n articles: response.data.results,\n pageLimit: response.data.pageLimit,\n totalCount: response.data.totalCount,\n isLoading: false,\n comments: response.data.comments,\n });\n } catch (err) {\n console.log(err);\n }\n };\n\n onPageChanged = (data) => {\n const currentPage = data;\n this.getDataByParams(this.state.selectedDuration, currentPage);\n };\n\n onchangeMonthOption = (e) => {\n let option = e.target.value;\n this.setState({ selectedDuration: option });\n this.getDataByParams(option);\n };\n render() {\n const {\n articles,\n totalCount,\n pageLimit,\n monthOptions,\n isLoading,\n currentPage,\n comments,\n } = this.state;\n let articleList = ;\n if (articles.length) {\n articleList = articles.map((article) => {\n return (\n \n );\n });\n } else if (!articles.length && !isLoading) {\n articleList =

    There is no data

    ;\n }\n return (\n
    \n
    \n \n this.onchangeMonthOption(e)}\n >\n {!monthOptions.length\n ? null\n : monthOptions.map((month) => {\n return (\n \n );\n })}\n \n
    \n
    {articleList}
    \n {!totalCount ? null : (\n \n }\n lastPageText={\n \n }\n prevPageText={\n \n }\n nextPageText={\n \n }\n activePage={+currentPage}\n itemsCountPerPage={pageLimit}\n totalItemsCount={totalCount}\n onChange={this.onPageChanged}\n itemClass=\"page-item\"\n linkClass=\"page-link\"\n />\n )}\n
    \n );\n }\n}\n\nexport default Archive;\n","import React from \"react\";\nimport Article from \"../components/article.list.component\";\nimport http from \"../http\";\nimport PaginationComp from \"../components/pagination.component\";\nimport Spinner from \"../components/UI/Spinner/Spinner.component\";\nimport queryString from \"query-string\";\n\nclass bestArticles extends React.Component {\n state = {\n articles: [],\n pageLimit: 15,\n currentPage: 1,\n totalCount: null,\n heading: \"Rethinking Islam (Best of Before Articles)\",\n comments: [],\n };\n componentDidMount() {\n const { search } = this.props.location;\n const parseQuery = queryString.parse(search);\n this.getDataByParams(parseQuery.page ? parseQuery.page : 1);\n }\n getDataByParams = async (page = 1) => {\n const { history, location } = this.props;\n this.setState({ currentPage: page });\n history.push({ pathname: location.pathname, search: `?page=${page}` });\n try {\n let params = {\n view: \"list\",\n page,\n };\n const response = await http.get(\"/getBestOfBeforeArtilces\", {\n params,\n });\n this.setState({\n articles: response.data.results,\n pageLimit: response.data.pageLimit,\n totalCount: response.data.totalCount,\n comments: response.data.comments,\n });\n } catch (err) {\n console.log(err);\n }\n };\n\n onPageChanged = (data) => {\n const currentPage = data;\n this.setState({\n articles: [],\n });\n this.getDataByParams(currentPage);\n };\n render() {\n const {\n articles,\n totalCount,\n pageLimit,\n comments,\n currentPage,\n } = this.state;\n let articleList = ;\n if (articles.length) {\n articleList = articles.map((article) => {\n return (\n \n );\n });\n }\n return (\n
    \n
    \n

    {this.state.heading}

    \n
    \n
    {articleList}
    \n\n {!totalCount ? null : (\n
    \n \n }\n lastPageText={\n \n }\n prevPageText={\n \n }\n nextPageText={\n \n }\n activePage={+currentPage}\n itemsCountPerPage={pageLimit}\n totalItemsCount={totalCount}\n onChange={this.onPageChanged}\n itemClass=\"page-item\"\n linkClass=\"page-link\"\n />\n
    \n )}\n
    \n );\n }\n}\n\nexport default bestArticles;\n","import React from \"react\";\nimport { GetUrlLink } from \"../utility\";\n\nconst NotFoundPage = ({ location, history }) => {\n let path = \"\";\n if (location.pathname && location.search) {\n console.log(location);\n path = `${location.pathname}${location.search.split(\"?\").join(\"\")}`;\n if (path.includes(\"&\")) {\n path = path.split(\"&\")[0];\n }\n history.push(path);\n } else if (location.pathname.includes(\"/a/\")) {\n const sections = localStorage.getItem(\"sections\");\n if (sections) {\n const ParsedData = JSON.parse(sections);\n const urlStr = location.pathname.replace(\"/a/\", \"\");\n const Filtersection = ParsedData.find(\n (section) => GetUrlLink(section.Group_Name.toLowerCase()) === urlStr\n );\n if (Filtersection) {\n path = `/articles/sections/${GetUrlLink(\n Filtersection.Group_Name.toLowerCase()\n )}/${Filtersection.GroupID}`;\n history.push(path);\n }\n }\n } else if (location.pathname.includes(\"NewAgeIslamSubscribe.aspx\")) {\n history.push(\"/subscribe\");\n } else if (location.pathname.includes(\"NewAgeIslamUnSubscribe.aspx\")) {\n history.push(\"/unsubscribe\");\n }\n return

    Page Not Found

    ;\n};\n\nexport default NotFoundPage;\n","import React from \"react\";\nimport SubscribeForm from \"../components/subscribe.form.component\";\n\nclass UnSubscribepage extends React.Component {\n\n render() {\n return (\n \n
    \n
    \n

    Unsubscribe to Our Newsletters

    \n
    \n
    \n \n
    \n
    \n
    \n )\n }\n}\n\n\nexport default UnSubscribepage;","import React from \"react\";\nimport { Route, Switch, withRouter } from \"react-router-dom\";\nimport \"./App.scss\";\nimport Header from \"./components/header.components\";\nimport Footer from \"./components/footer.componets\";\n\nimport Home from \"./pages/home.component\";\nimport Contact from \"./pages/contacts.component\";\nimport Disclaimer from \"./pages/disclaimer.component\";\nimport ArticleList from \"./pages/list.component\";\nimport About from \"./pages/about.component\";\nimport Subscribepage from \"./pages/subscribepage.component\";\nimport ArticleDetail from \"./pages/article.detail.component\";\nimport LatestArticles from \"./pages/latest.articles.component\";\nimport PopularArticles from \"./pages/popular.articles.component\";\nimport LatestComments from \"./pages/latest.comments.component\";\nimport LatestVideos from \"./pages/latest.videos.component\";\nimport Privacypolicy from \"./pages/privacypolicy.component\";\nimport Advertise from \"./pages/advertise.component\";\nimport Donate from \"./pages/donate.component\";\nimport http from \"./http\";\nimport SideBar from \"./components/sidebarInnerPage.component\";\nimport Search from \"./pages/search.component\";\nimport ViewComments from \"./pages/view.comments.page\";\nimport Archives from \"./pages/archives.page.component\";\nimport BestOfBefore from \"./pages/bestofbefore.component\";\nimport NotFoundPage from \"./pages/notFoundPage\";\nimport UnSubscribepage from \"./pages/unsubscribepage.componen\";\n\nclass App extends React.Component {\n state = {\n writers: []\n };\n getWritersList = async () => {\n try {\n const writers = localStorage.getItem(\"writers\");\n const tx = localStorage.getItem(\"writersTime\");\n const tc = new Date().getTime();\n const diff = Math.abs((parseInt(tc) - parseInt(tx)) / (60 * 60 * 1000));\n if (writers && diff < 8) {\n this.setState({ writers: JSON.parse(writers) });\n return;\n }\n const result = await http.get(\"/authors\");\n localStorage.setItem(\"writers\", JSON.stringify(result.data));\n localStorage.setItem(\"writersTime\", new Date().getTime());\n this.setState({ writers: result.data });\n } catch (err) {}\n };\n\n componentDidMount() {\n this.getWritersList();\n }\n\n render() {\n const { location } = this.props;\n return (\n \n
    \n \n \n \n
    \n
    \n
    \n {location.pathname !== \"/\" ? : null}\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n {location.pathname !== \"/\" ? : null}\n \n
    \n
    \n
    \n