مسعود معمار

عضو تالار جوملا
  • تعداد محتوا

    23
  • تاریخ عضویت

  • آخرین بازدید

2 دنبال کنندگان

درباره مسعود معمار

  • رتبه حساب کاربری
    Member
  1. آموزش نحوه ست کردن پروکسی ربات اینستاگرام

    سلام جناب آقای تهرانی وقت بخیر آی پی اختصاصی تهیه کردم ولی توی ربات لیست پروکسی ندیدم ! میشه بیشتر توضیح بفرمایید؟ متشکرم
  2. متشکرم ، دقیقا مشکل من همین بود ، ممنون که راه حل رو اینجا نوشتی!
  3. اعشار در قیمت افزونه Digicom (دی جی کام)

    سلام وقت بخیر چطور میتونم اعشار قیمت رو از دی جی کام بردارم ؟ الآن قیمت رو به این شکل نشون میده : 99000.0 ریال اون صفر آخر اضافه س
  4. مشکل با افزونه فروش فایل جومینا

    برای من مشکلی نداشت ، اجازه بده بررسی کنم اگر مشکل حل شد مجدد پیام میدم
  5. مشکل با افزونه فروش فایل جومینا

    توی این مسیر برید : public_html/components/com_joominaflileselling/views/verify/tmpl/default.php و فایل default.php رو باز کنید و محتویاتش رو کلا پاک کنید و محتویات فایلی که پیوست کردم روکاملا جایگزین فایل های قبلی کنید ، مشکل 100% حل میشه : -----------------------------------------------------/////////////////-------------------------------------- <?php defined('_JEXEC') || die('=;)'); $document = JFactory::getDocument(); $url = JURI::base().'components/com_joominaflileselling/assets/css/default.css'; $document->addStyleSheet($url); // get session $session =& JFactory::getSession(); $price = $session->get( 'price'); $id = $session->get( 'id'); $useremail = $session->get( 'useremail'); //get config $db = JFactory::getDBO(); $query = "SELECT * FROM `#__filesellconfig`"; $db->setQuery($query); $config = $db->loadObject(); //get file $db = JFactory::getDBO(); $query = "SELECT * FROM `#__joominaflileselling` WHERE `id`='". $id ."' "; $db->setQuery($query); $file = $db->loadObject(); //making hashfile $filenamehash = md5($file->name); $date =& JFactory::getDate(); $date = explode(' ' , $date); $date= $date[0]; $datehash =md5($date); //factornumber function randomfactornomber($length=10) { $string = ''; $characters = "23456789ABCDEFHJKLMNPRTVWXYZabcdefghijklmnopqrstuvwxyz"; for ($p = 0; $p < $length; $p++) { $string .= $characters[mt_rand(0, strlen($characters)-1)]; } return $string; } $factornumber =randomfactornomber(5); $hash= $filenamehash.$factornumber.$datehash; // file was free $zeroprice = $file->price; if ($zeroprice == '0'){ $payverify = 1; $useremail=$_POST['costomeremail']; if($payverify = 1){?> <div class="successfullpay"> <h2>کاربر گرامی ، لینک دانلود شما با شماره فاکتور اختصاصی ایجاد گردید. <?php echo $factornumber ?></h2> <div class="joominafactornumber"> <p>شماره فاکتور شما <?php echo $factornumber ?> میباشد</p> </div> <p style="padding-right:10px">لطفا در نگه داری شماره فاکتور خود دقت فرمایید</p> <?php if($config->emaillink == '1'){?> <p style="background:#FFF ; padding:10 0"> جهت دانلود فایل مورد نظر ، با استفاده از شماره فاکتور اختصاصی شما روی لینک دانلود کلیک نمایید:<a href="http://pnegah.ir">دانلود فایل</a> </p> <?php } ?> <p>در صورتی که در حال دانلود فایل هایی هستید که مرورگر ان ها را باز میکند همانند فایل های تصویری میتوانید از ادرس بار بالا لینک مستیقیم فایل را کپی نموده و در دانلود منیجر قرار دهید</p> </div> <?php //-- No direct access defined('_JEXEC') || die('=;)'); $document = JFactory::getDocument(); $url = JURI::base().'components/com_joominaflileselling/assets/css/default.css'; $document->addStyleSheet($url); // get session $session =& JFactory::getSession(); $id = $session->get( 'id'); $hash = $session->get( 'hash'); $factornumber = $session->get( 'factornumber' ); //get config $db = JFactory::getDBO(); $query = "SELECT * FROM `#__filesellconfig`"; $db->setQuery($query); $config = $db->loadObject(); //get file $db = JFactory::getDBO(); $query = "SELECT * FROM `#__joominaflileselling` WHERE `id`='". $id ."' "; $db->setQuery($query); $file = $db->loadObject(); //get file download order $db = JFactory::getDBO(); $query = "SELECT * FROM `#__joominafileseldownload` WHERE `factornumber`='". $factornumber ."' "; $db->setQuery($query); $fileorder = $db->loadObject(); //get date //today date $date =& JFactory::getDate(); $date = explode(' ' , $date); $todaydate= $date[0]; $today_time = strtotime($todaydate); //expire date $dateorder = $fileorder->date; //2016-03-11 $datexpire = $config->downloaddate; $datexpire = $datexpire+1; $datexpire = (1)*$datexpire; $datee = new DateTime($dateorder); $datee->modify('+'.$datexpire.' day'); $datexpire =$datee->format('Y-m-d') . "\n"; $datexpire = strtotime($datexpire); if ($datexpire > $today_time ) { // if directlink was not enter if (!$file->directdownloadlink){ //prepare file for download $filename = JPATH_SITE.'/joominaupload/'.$file->hostdownloadlink; $only_filename = basename($filename); //define mimtype $mimedevide = explode('.' ,$only_filename); $mim = end($mimedevide); switch ($mim) { case "ez": $mime="application/andrew-inset"; break; case "hqx": $mime="application/mac-binhex40"; break; case "cpt": $mime="application/mac-compactpro"; break; case "doc": $mime="application/msword"; break; case "docx": $mime="application/vnd.openxmlformats-officedocument.wordprocessingml.document"; break; case "bin": $mime="application/octet-stream"; break; case "dms": $mime="application/octet-stream"; break; case "lha": $mime="application/octet-stream"; break; case "lzh": $mime="application/octet-stream"; break; case "exe": $mime="application/octet-stream"; break; case "class": $mime="application/octet-stream"; break; case "dll": $mime="application/octet-stream"; break; case "oda": $mime="application/oda"; break; case "pdf": $mime="application/pdf"; break; case "ai": $mime="application/postscript"; break; case "eps": $mime="application/postscript"; break; case "ps": $mime="application/postscript"; break; case "xls": $mime="application/vnd.ms-excel"; break; case "xml": $mime="application/xml"; break; case "xlsx": $mime="application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"; break; case "ppt": $mime="application/vnd.ms-powerpoint"; break; case "pptx": $mime="application/vnd.openxmlformats-officedocument.presentationml.presentation"; break; case "wbxml": $mime="application/vnd.wap.wbxml"; break; case "wmlc": $mime="application/vnd.wap.wmlc"; break; case "wmlsc": $mime="application/vnd.wap.wmlscriptc"; break; case "vcd": $mime="application/x-cdlink"; break; case "pgn": $mime="application/x-chess-pgn"; break; case "csh": $mime="application/x-csh"; break; case "dvi": $mime="application/x-dvi"; break; case "spl": $mime="application/x-futuresplash"; break; case "gtar": $mime="application/x-gtar"; break; case "hdf": $mime="application/x-hdf"; break; case "js": $mime="application/x-javascript"; break; case "nc": $mime="application/x-netcdf"; break; case "cdf": $mime="application/x-netcdf"; break; case "swf": $mime="application/x-shockwave-flash"; break; case "tar": $mime="application/x-tar"; break; case "tcl": $mime="application/x-tcl"; break; case "tex": $mime="application/x-tex"; break; case "texinfo": $mime="application/x-texinfo"; break; case "texi": $mime="application/x-texinfo"; break; case "t": $mime="application/x-troff"; break; case "tr": $mime="application/x-troff"; break; case "roff": $mime="application/x-troff"; break; case "man": $mime="application/x-troff-man"; break; case "me": $mime="application/x-troff-me"; break; case "ms": $mime="application/x-troff-ms"; break; case "ustar": $mime="application/x-ustar"; break; case "src": $mime="application/x-wais-source"; break; case "zip": $mime="application/x-zip"; break; case "au": $mime="audio/basic"; break; case "snd": $mime="audio/basic"; break; case "mid": $mime="audio/midi"; break; case "midi": $mime="audio/midi"; break; case "kar": $mime="audio/midi"; break; case "mpga": $mime="audio/mpeg"; break; case "mp2": $mime="audio/mpeg"; break; case "mp3": $mime="audio/mpeg"; break; case "mp4": $mime="video/mp4"; break; case "aif": $mime="audio/x-aiff"; break; case "aiff": $mime="audio/x-aiff"; break; case "aifc": $mime="audio/x-aiff"; break; case "m3u": $mime="audio/x-mpegurl"; break; case "ram": $mime="audio/x-pn-realaudio"; break; case "rm": $mime="audio/x-pn-realaudio"; break; case "rpm": $mime="audio/x-pn-realaudio-plugin"; break; case "ra": $mime="audio/x-realaudio"; break; case "wav": $mime="audio/x-wav"; break; case "pdb": $mime="chemical/x-pdb"; break; case "xyz": $mime="chemical/x-xyz"; break; case "bmp": $mime="image/bmp"; break; case "gif": $mime="image/gif"; break; case "ief": $mime="image/ief"; break; case "jpeg": $mime="image/jpeg"; break; case "jpg": $mime="image/jpeg"; break; case "jpe": $mime="image/jpeg"; break; case "png": $mime="image/png"; break; case "tiff": $mime="image/tiff"; break; case "tif": $mime="image/tiff"; break; case "wbmp": $mime="image/vnd.wap.wbmp"; break; case "ras": $mime="image/x-cmu-raster"; break; case "pnm": $mime="image/x-portable-anymap"; break; case "pbm": $mime="image/x-portable-bitmap"; break; case "pgm": $mime="image/x-portable-graymap"; break; case "ppm": $mime="image/x-portable-pixmap"; break; case "rgb": $mime="image/x-rgb"; break; case "xbm": $mime="image/x-xbitmap"; break; case "xpm": $mime="image/x-xpixmap"; break; case "xwd": $mime="image/x-xwindowdump"; break; case "msh": $mime="model/mesh"; break; case "mesh": $mime="model/mesh"; break; case "silo": $mime="model/mesh"; break; case "wrl": $mime="model/vrml"; break; case "vrml": $mime="model/vrml"; break; case "css": $mime="text/css"; break; case "asc": $mime="text/plain"; break; case "txt": $mime="text/plain"; break; case "gpg": $mime="text/plain"; break; case "rtx": $mime="text/richtext"; break; case "rtf": $mime="text/rtf"; break; case "wml": $mime="text/vnd.wap.wml"; break; case "wmls": $mime="text/vnd.wap.wmlscript"; break; case "etx": $mime="text/x-setext"; break; case "xsl": $mime="text/xml"; break; case "flv": $mime="video/x-flv"; break; case "mpeg": $mime="video/mpeg"; break; case "mpg": $mime="video/mpeg"; break; case "mpe": $mime="video/mpeg"; break; case "qt": $mime="video/quicktime"; break; case "mov": $mime="video/quicktime"; break; case "mxu": $mime="video/vnd.mpegurl"; break; case "avi": $mime="video/x-msvideo"; break; case "movie": $mime="video/x-sgi-movie"; break; case "asf": $mime="video/x-ms-asf"; break; case "asx": $mime="video/x-ms-asf"; break; case "wm": $mime="video/x-ms-wm"; break; case "wmv": $mime="video/x-ms-wmv"; break; case "wvx": $mime="video/x-ms-wvx"; break; case "ice": $mime="x-conference/x-cooltalk"; break; case "rar": $mime="application/x-rar"; break; default: $mime="application/octet-stream"; break; } $mime_type = $mime; //get file size $size = filesize($filename); // set download speed $transfer_speed = 20000000000; //downloadfile $content_params = JComponentHelper::getParams( 'com_joominaflileselling' ); $filesize = $content_params->get( 'filesize' ); function toNumber($val) { if (is_numeric($val)) { $int = (int)$val; $float = (float)$val; $val = ($int == $float) ? $int : $float; return $val; } else { trigger_error("Cannot cast $val to a number", E_USER_WARNING); return null; } } $filesize = $filesize*1000000; $filesize = toNumber($filesize); if ($size < $filesize){ $download_class_file = JPATH_SITE.'/components/com_joominaflileselling/downloader.php'; if (file_exists($download_class_file)){ require_once ($download_class_file); $object = new downloader; $object->set_byfile($filename); // Type: Download from a file $object->set_filename($only_filename); // Set the file basename $object->set_filesize($size); // Set the file basename $object->set_mime($mime_type); // Set the mime type $object->set_speed($transfer_speed); // Set download speed $object->use_resume = true; // Set the value for using Resume Mode $object->open_in_browser = $open_in_browser; // Set whether the file shall be opened in browser window $object->use_autoexit = true; // Set the value for auto exit ('false' worked not really with extern file?) $session =& JFactory::getSession(); $session->clear('id'); $session->clear('hash'); $session->clear('factornumber'); $object->download(); // Run the download exit; } else { $msg =JText::_('فایل یافت نشد').': '.$filename; echo $msg; } } if ($size > $filesize) { jimport('joomla.filesystem.folder'); $filefolder = JPATH_ROOT.'/'.'joominauploadtmp'; function creat($name,$file) { $fp = fopen($name,"w") or $error=1; fputs($fp,$file); fclose($fp) or $error=1; if($error){$status= '0';}else{ $status= '1';} return ($status); } if (!JFolder::exists($filefolder)){ JFolder::create(JPATH_ROOT.'/'.'joominauploadtemp'); $insideindex = 'do not allow download file'; creat(JPATH_ROOT.'/'.'joominauploadtemp/'.'index.html', $insideindex); }; $destination = JPATH_SITE.'/joominauploadtemp/'. $hash.'.'.$mim; if(!file_exists ( $destination )){ copy( $filename ,$destination ); } $dest = JURI::base().'joominauploadtemp/'. $hash.'.'.$mim; $session =& JFactory::getSession(); $session->clear('id'); $session->clear('hash'); $session->clear('factornumber'); ?> <a id="link" href="<?php echo $dest?>">لینک دانلود</a> <script type="text/javascript"> $(function(){ window.location.href = $('#link').attr('href'); }); </script> <?php }; ?> <?php } //if direct link else { $dest = $file->directdownloadlink; $session =& JFactory::getSession(); $session->clear('id'); $session->clear('hash'); $session->clear('factornumber'); ?> <a id="link" href="<?php echo $dest?>">لینک دانلود</a> <script type="text/javascript"> $(function(){ window.location.href = $('#link').attr('href'); }); </script> <?php } }//expiretime else { //else expiretime ?> <div class="emaillink"> اعتبار لینک دانلود شما برای مدت <?php echo $config->downloaddate ?> روز از زمان خرید بوده است و خرید شما در تاریخ <?php echo JHTML::_('date',$fileorder->date,"D d M Y") ?> به انجام رسیده است . لذا دانلود این فایل دیگر برای شما مقدور نیست </div> <?php }?> <?php echo $config->downloaddate; } else { $payverify = 0; } //zarinpal was active if ($config->bank == '1') { require_once('lib/zarinpal/nusoap.php'); $MerchantID = $config->zarinpalid; $Amount = $price; //Amount will be based on Toman $Authority = $_GET['Authority']; if($_GET['Status'] == 'OK'){ // URL also Can be https://ir.zarinpal.com/pg/services/WebGate/wsdl $client = new nusoap_client('https://de.zarinpal.com/pg/services/WebGate/wsdl', 'wsdl'); $client->soap_defencoding = 'UTF-8'; $result = $client->call('PaymentVerification', array( array( 'MerchantID' => $MerchantID, 'Authority' => $Authority, 'Amount' => $Amount ) ) ); if($result['Status'] == 100){?> <div class="successfullpay"> <h2>کاربر گرامی ، خرید شما با موفقیت انجام شد </h2> <div class="refrenceidjoomina"> <p>شماره تراکنش شما <?php echo $result['RefID'] ; $shomareerja= $result['RefID']; ?> میباشد</p> </div> <div class="joominafactornumber"> <p>شماره فاکتور شما <?php echo $factornumber ?> میباشد</p> </div> <p style="padding-right:10px">لطفا در نگه داری شماره فاکتور خود دقت فرمایید</p> <?php if($config->emaillink == '1'){?> <p style="background:#FFF ; padding:10 0"> همچنین لینک دانلود و شماره فاکتور برای شما ایمیل شد </p> <?php } ?> <p>در صورتی که در حال دانلود فایل هایی هستید که مرورگر ان ها را باز میکند همانند فایل های تصویری میتوانید از ادرس بار بالا لینک مستیقیم فایل را کپی نموده و در دانلود منیجر قرار دهید</p> </div> <div class="emaillink"> <p style="text-align:center">مدت اعتبار لینک دانلود شما به مدت <?php echo $config->downloaddate ?> روز میباشد<p> </div> <?php $payverify = 1; } else { echo 'تراکنش با شکست روبرو شد کد خطا:'. $result['Status']; $payverify = 0; } } else { echo 'عملیات پرداخت توسط شما لغو شده است'; $payverify = 0; } } //payline was actice if ($config->bank == '2') { $api = $config->paylineapi; $Amount = $price*10; $Amount = intval($Amount); $trans_id = $_POST['trans_id']; $id_get = $_POST['id_get']; $url = 'http://payline.ir/payment/gateway-result-second'; ////////////////////////////////////////// function get($url,$api,$trans_id,$id_get){ $ch = curl_init(); curl_setopt($ch,CURLOPT_URL,$url); curl_setopt($ch,CURLOPT_POSTFIELDS,"api=$api&id_get=$id_get&trans_id=$trans_id"); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE); curl_setopt($ch,CURLOPT_RETURNTRANSFER,true); $res = curl_exec($ch); curl_close($ch); return $res; } $result = get($url,$api,$trans_id,$id_get); // check payline verify /// if successfull if ($result == '1'){ $payverify = 1; ?> <div class="successfullpay"> <h2>کاربر گرامی ، خرید شما با موفقیت انجام شد </h2> <div class="refrenceidjoomina"> <p>شماره تراکنش شما <?php echo $trans_id ; $shomareerja= $trans_id; ?> میباشد</p> </div> <div class="joominafactornumber"> <p>شماره فاکتور شما <?php echo $factornumber ?> میباشد</p> </div> <p style="padding-right:10px">لطفا در نگه داری شماره فاکتور خود دقت فرمایید</p> <?php if($config->emaillink == '1'){?> <p style="background:#FFF ; padding:10 0"> همچنین لینک دانلود و شماره فاکتور برای شما ایمیل شد </p> <?php } ?> <p>در صورتی که در حال دانلود فایل هایی هستید که مرورگر ان ها را باز میکند همانند فایل های تصویری میتوانید از ادرس بار بالا لینک مستیقیم فایل را کپی نموده و در دانلود منیجر قرار دهید</p> </div> <div class="emaillink"> <p style="text-align:center">مدت اعتبار لینک دانلود شما به مدت <?php echo $config->downloaddate ?> روز میباشد<p> </div> <?php } if ($result == '-1'){$payverify = 0; echo 'api ارسالی با درگاه پی لاین سازگار نیست';} if ($result == '-2'){$payverify = 0; echo 'trans_id رسالی معتبر نیست';} if ($result == '-3'){$payverify = 0;echo 'id_get رسالی معتبر نیست';} if ($result == '-4'){$payverify = 0;echo 'چنین تراکنشی در سیستم وجود ندارد و یا موفقیت آمیز نیوده است';} }//if payline was active //mellat bank was active if ($config->bank == '3') { include_once('lib/mellat/nusoap.php'); $client = new nusoap_client('https://bpm.shaparak.ir/pgwchannel/services/pgw?wsdl'); $namespace='http://interfaces.core.sw.bps.com/'; $res = $_POST[ResCode]; $tar= $_POST['SaleReferenceId']; //start verify if ($res == '0') { ///////VERIFY METHOD $terminalId = $config->mellatpayaneh;; $userName = $config->mellatusername; $userPassword = $config->mellatpass; $orderId = $_POST['SaleOrderId']; $verifySaleOrderId = $_POST['SaleOrderId']; $verifySaleReferenceId = $_POST['SaleReferenceId']; // Check for an error $err = $client->getError(); if ($err) { echo '<h2>Constructor error</h2><pre>' . $err . '</pre>'; //die(); } $parameters = array( 'terminalId' => $terminalId, 'userName' => $userName, 'userPassword' => $userPassword, 'orderId' => $orderId, 'saleOrderId' => $verifySaleOrderId, 'saleReferenceId' => $verifySaleReferenceId); // Call the SOAP method $result = $client->call('bpVerifyRequest', $parameters, $namespace); // Check for a fault if ($client->fault) { echo '<h2>Fault</h2><pre>'; print_r($result); echo '</pre>'; //die(); } else { $resultStr = $result; $err = $client->getError(); if ($err) { // Display the error echo '<h2>Error</h2><pre>' . $err . '</pre>'; ///die(); } else { // Display the result // Update Table, Save Verify Status // Note: Successful Verify means complete successful sale was done. }// end Display the result }// end Check for errors ////////END OF VERYFY ///SETTELE START $terminalId = $config->mellatpayaneh;; $userName = $config->mellatusername; $userPassword = $config->mellatpass; $orderId = $_POST['SaleOrderId']; $settleSaleOrderId = $_POST['SaleOrderId']; $settleSaleReferenceId = $_POST['SaleReferenceId']; // Check for an error $err = $client->getError(); if ($err) { echo '<h2>Constructor error</h2><pre>' . $err . '</pre>'; //die(); } $parameters = array( 'terminalId' => $terminalId, 'userName' => $userName, 'userPassword' => $userPassword, 'orderId' => $orderId, 'saleOrderId' => $settleSaleOrderId, 'saleReferenceId' => $settleSaleReferenceId); // Call the SOAP method $result = $client->call('bpSettleRequest', $parameters, $namespace); // Check for a fault if ($client->fault) { echo '<h2>Fault</h2><pre>'; print_r($result); echo '</pre>'; $payverify = 0; //die(); } else { $resultStr = $result; $err = $client->getError(); if ($err) { // Display the error echo '<h2>Error</h2><pre>' . $err . '</pre>'; $payverify = 0; //die(); } else { // Update Table, Save Settle Status // Note: Successful Settle means that sale is settled. $payverify = 1; $price=($price/10);?> <h2>کاربر گرامی ، خرید شما با موفقیت انجام شد </h2> <div class="refrenceidjoomina"> <p>شماره تراکنش شما <?php echo $settleSaleReferenceId ; $shomareerja= $settleSaleReferenceId; ?> میباشد</p> </div> <div class="joominafactornumber"> <p>شماره فاکتور شما <?php echo $factornumber ?> میباشد</p> </div> <p style="padding-right:10px">لطفا در نگه داری شماره فاکتور خود دقت فرمایید</p> <?php if($config->emaillink == '1'){?> <p style="background:#FFF ; padding:10 0"> همچنین لینک دانلود و شماره فاکتور برای شما ایمیل شد </p> <?php } ?> <p>در صورتی که در حال دانلود فایل هایی هستید که مرورگر ان ها را باز میکند همانند فایل های تصویری میتوانید از ادرس بار بالا لینک مستیقیم فایل را کپی نموده و در دانلود منیجر قرار دهید</p> </div> <div class="emaillink"> <p style="text-align:center">مدت اعتبار لینک دانلود شما به مدت <?php echo $config->downloaddate ?> روز میباشد<p> </div><?php }// end Display the result }// end Check for errors } }//mellat was active // end of else file free //zarinpal was active if ($config->bank == '6') { $db = JFactory::getDBO(); $query = "SELECT * FROM `#__joominaflileselling` WHERE `id`='". $id ."' "; $db->setQuery($query); $trans = $db->loadObject(); if (($trans->disount > '0') and ($config->alldiscount == '0')){ $Amount = ($trans->price) - ($trans->disount) ; }else { $dicsountall = $config->alldiscount; $dicsountall = ($trans->price)*$dicsountall; $dicsountall = $dicsountall/100; $Amount = ($trans->price)-($dicsountall);} $Amount=$Amount*10; $amount = $Amount; if ($_POST['RESCODE'] == '00') { require_once('lib/mabnacard/nusoap.php'); $client = new nusoap_client("https://mabna.shaparak.ir/TransactionReference/TransactionReference?wsdl", 'wsdl'); $params = JComponentHelper::getParams('com_joominaflileselling'); $__CRN = !empty($_POST['CRN']) ? $_POST['CRN'] : ''; $__MID = trim($params->get('mid')); $terminal = trim($params->get('tid')); $pub_key = ' -----BEGIN PUBLIC KEY----- ' . trim($params->get('publickey')) . ' -----END PUBLIC KEY-----'; $key_resource = openssl_get_publickey($pub_key); openssl_public_encrypt($_POST["TRN"], $crypttext, $key_resource); $TRN = base64_encode($crypttext); openssl_public_encrypt($__CRN, $crypttext, $key_resource); $CRN = base64_encode($crypttext); openssl_public_encrypt($__MID, $crypttext, $key_resource); $MID = base64_encode($crypttext); $source = $__MID . $_POST["TRN"] . $__CRN; $key = trim($params->get('privatekey')); if (strpos($key, '-----BEGIN PRIVATE KEY-----') === false) $key = "-----BEGIN PRIVATE KEY-----\n" . $key; if (strpos($key, '-----END PRIVATE KEY-----') === false) $key .= "\n-----END PRIVATE KEY-----"; $priv_key = openssl_pkey_get_private($key); $signature = ''; openssl_sign($source, $signature, $priv_key, OPENSSL_ALGO_SHA1); $inputArray = array( "SaleConf_req" => array( "MID" => $MID, "CRN" => $CRN, "TRN" => $TRN, "SIGNATURE" => base64_encode($signature) ) ); $WSResult = $client->call("sendConfirmation", $inputArray); $error = $client->getError(); $ret = var_export($WSResult,true); $signature = base64_decode($WSResult["return"]["SIGNATURE"]); $data = $WSResult["return"]["RESCODE"].$WSResult["return"]["REPETETIVE"].$WSResult["return"]["AMOUNT"].$WSResult["return"]["DATE"].$WSResult["return"]["TIME"].$WSResult["return"]["TRN"].$WSResult["return"]["STAN"]; $ok = openssl_verify($data, $signature, $key_resource); if ($ok == 1) { if (($WSResult['return']['RESCODE'] == '00') && ($WSResult['return']['successful'] == true)) { if (floatval($WSResult["return"]["AMOUNT"]) == floatval($amount)) { $html = '<div class="successpay"> <h3>پرداخت شما با موفقیت انجام شد .</h3> <p>شماره تراکنش پرداخت شما : <span class="btn btn-success">'. $WSResult['return']['TRN'].'</span></p> <p>شماره کد رهگیری در سایت : <span class="btn btn-info">'.$factornumber.'</span></p> <p>لطفا در حفظ و نگه داری اطلاعات این صفحه دقت بفرمایید</p> </div>'; echo $html; $payverify = '1'; } } else { echo $msg = '<font color="red" ><b>پرداخت ناموفق</b></font><br/> <br/>'; ; } }else { echo $msg = '<font color="red" ><b>پرداخت ناموفق</b></font><br/>خطا در وریفای اطلاعات <br/>'; } } elseif ($_POST['RESCODE']=='200') { $ret = var_export($_POST,true); echo $msg = "پرداخت موفق آمیز نبود ، خطای 200"; echo '<br/>'."کاربر از پرداخت انصراف داد" ; } } //if payverify was successfull -> go if ($payverify == '1') { //store if data base $db = JFactory::getDBO(); $query = "INSERT INTO `#__joominafileseldownload` (`id`, `fileid`, `date`, `factornumber`, `downloadnomber`, `hashcode`, `email`, `price`) VALUES (NULL, '". $id ."', '".$date ."', '". $factornumber ."', '" . $shomareerja ."', '". $hash. "', '." . $useremail ."', '" . $price. "') "; $db->setQuery($query); $result = $db->query(); ////if user //// $user = JFactory::getUser(); if (!$user->guest) { $db = JFactory::getDBO(); $query = "INSERT INTO `#__joominafileseldownloaduser` (`id`, `fileid`, `date`, `factornumber`, `downloadnomber`, `hashcode`, `email`, `price` , `userid`) VALUES (NULL, '". $id ."', '".$date ."', '". $factornumber ."', '" . $shomareerja ."', '". $hash. "', '." . $useremail ."', '" . $price. "','".$user->id."') "; $db->setQuery($query); $result = $db->query(); } /// end of if user //// //sending email if($config->emaillink == '1'){ $mailer = JFactory::getMailer(); $actionform =JURI::root().'?option=com_joominaflileselling&view=factor&factor='.$factornumber; $body = "<div style='text-align:ritgh; direction:rtl; font-family:tahoma;line-height:23px; font-size:12px'>کاربر محترم <br />ضمن تشکر از خرید شما، </br> فایل خریداری شده،".$file->name." میباشد <br>"." همچنین شماره فاکتور شما عبارت است از : <b>". $factornumber . "</b> <br /> لطفا در حفظ و نگهداری این شماره فاکتور دقت بفرمایید" . "<br/> مدت اعتبار لینک دانلود شما <b>" . $config->downloaddate. "</b> روز میباشد". "<br /><br /><br /><a target='_blank' href='$actionform' style='background: #d93434; background-image: -webkit-linear-gradient(top, #d93434, #b82b2b); background-image: -moz-linear-gradient(top, #d93434, #b82b2b); background-image: -ms-linear-gradient(top, #d93434, #b82b2b); background-image: -o-linear-gradient(top, #d93434, #b82b2b); background-image: linear-gradient(to bottom, #d93434, #b82b2b); -webkit-border-radius: 4; -moz-border-radius: 4; border-radius: 4px; font-family: tahoma; color: #ffffff; font-size: 14px; padding: 10px 20px 10px 20px; text-decoration: none; font-weight:normal'>دانلود فایل</a><br /> <div style='font-size:10px'>اجرا شده بوسیله <a href='http://Pnegah.ir' target='_blank'>پویا نگاه</a></div> </div> "; $to = $useremail; $configsite = JFactory::getConfig(); $sitename= $configsite->get( 'sitename' ); $mailfrom = $configsite->get( 'mailfrom' ); $fromname = $configsite->get( 'fromname' ); $mailer->setSender($mailfrom,$fromname); $subject =$sitename .' - '. 'فایل خریداری شده '. $file->name ; # Invoke JMail Class # Add a recipient -- this can be a single address (string) or an array of addresses $mailer->addRecipient($to); $mailer->setSubject($subject); $mailer->setBody($body); # If you would like to send as HTML, include this line; otherwise, leave it out $mailer->isHTML(true); # Send once you have set all of your options $mailer->send(); } // make download botton $urlgo = JURI::base().'?option=com_joominaflileselling&view=download'; $session = & JFactory::getSession(); $session->clear('price'); $session->clear('id'); $session->clear('useremail'); $session->set( 'id', $id ); $session->set( 'hash', $hash ); $session->set( 'factornumber', $factornumber ); ?> <form method="post" action="<?php echo $urlgo ?>"> <input name="submitemail" class="joominapaybottom" type="submit" value="دانلود فایل" /> </form> <?php } if ($payverify != '1') { $db = JFactory::getDBO(); $query = "INSERT INTO `#__joominafileseldownload` (`id`, `fileid`, `date`, `factornumber`, `downloadnomber`, `hashcode`, `email`, `price`) VALUES (NULL, '". $id ."', '".$date ."', '". $factornumber ."', 'ناموفق', '". $hash. "', '." . $useremail ."', '" . $price. "') "; $db->setQuery($query); $result = $db->query(); } } ?>
  6. مشکل با افزونه فروش فایل جومینا

    گزارش خطا رو هم روی حداکثر قرار دادم ازین دو خط ایراد میگرفت : ------------------------------------------------------------------------------------------------------- Strict Standards: Only variables should be assigned by reference in .../components/com_joominaflileselling/views/verify/tmpl/default.php on line 7 : $session =& JFactory::getSession(); ------------------------------------------------------------------------------------------------------- Strict Standards: Only variables should be assigned by reference in.../components/com_joominaflileselling/views/verify/tmpl/default.php on line 25 : $date =& JFactory::getDate(); ------------------------------------------------------------------------------------------------------- طراحی سایت
  7. مشکل با افزونه فروش فایل جومینا

    سلام وقت بخیر آخرین نسخه افزونه فروش فایل جومینا رو نصب کردم ، اما یه مشکل اساسی دارم ، فایل هایی که دارای مبلغ هستن مشکلی ندارن و پس از پرداخت دانلود میشن اما مشکل اینجاست که ، فایل هایی که مبلغشون صفر هست رو پس از کلیک بر روی کلید پرداخت و دانلود فایل ، هیچ لینکی برای دانلود نمایش نمیده و اینکه در حسابداری هم نشون نمیده که یک عملیات موفق انجام شده ، در واقع انگار اتفاقی نیوفتاده .
  8. اگه عمرم یه نفس بود ، واسه دیدار تو بس بود ...

  9. تو فکر یک سقفم ! یه سقف بی روزن !

  10. مشکل در لود نشدن پیج درج فایل در فروش فایل جومینا دارم ، لطفا راهنمایی بفرمایید چکار کنم !؟ تا الان هیچ مشکلی نداشته ، یهویی اینطور شده و دیگه نمیتونم فیل جدید اضافه کنم !
  11. سلام درخواست درگاه بانک ملت برای ویرچومارت 3 و جوملا 3 رو دارم ! از وب سایت جومینا این (لینک زیر) این بسته رو نصب کردم اما پیام : لینک دانلود درگاه بانک ملت برای ویرچومارت هشدار JInstaller: :نصب: فایل نصب XML جوملا یافت نشد خطا ناتوان در یافتن بسته نسبی نمایش داده میشه ! مستقیم هم توی پوشه TMP کپی و اکسترک کردم اما فایده ای نداشت !
  12. تغيير سريع فونت ها با ماژول Fast Font

    اینم لینک همین ماژول برای جوملا 3 http://extensions.joomla.org/extensions/extension/style-a-design/typography/fast-font
  13. سبد خرید جومشاپینگ

    اگه میشه برای ما هم بگید چطور میشه انجام داد ... ممنون
  14. سلام ه من این کامپوننت و تمام فایل های همراهشونصب کردم اما ابرادی که پیدا کردم اینه که وقتی در قسمت فایل ها ، جدید رو کلیک میکنم تنها چیزی که توی صفحه به من نشون میده کپی رایت جومینا هستش لطفا کمک کنید مشکل رفه بشه ! آقای قاسمی عزیز و آقای تهرانی عزیز !
  15. نمایش فونت های فارسی به صورت ????علامت سوال

    سلام منم همین مشکل رو داشتم اما خیلی راحت مشکل حل شد فایلی رو که درون فارسی نوشته بودم رو با not pad باز کردم و به صورت utf- 8 ذخیره کردم.بعد کش سایت رو پاک کردم و رفرش کردم آیتم ها ترجمه شده بود ./