{"id":1573,"date":"2017-02-12T22:49:53","date_gmt":"2017-02-13T03:49:53","guid":{"rendered":"http:\/\/xlinesoft.com\/blog\/?p=1573"},"modified":"2017-03-07T10:48:53","modified_gmt":"2017-03-07T15:48:53","slug":"version-9-7-of-phprunner-asprunnerpro-and-asprunner-net","status":"publish","type":"post","link":"https:\/\/xlinesoft.com\/blog\/2017\/02\/12\/version-9-7-of-phprunner-asprunnerpro-and-asprunner-net\/","title":{"rendered":"Version 9.7 of PHPRunner, ASPRunnerPro and ASPRunner.NET"},"content":{"rendered":"<p>PHPRunner 9.7, ASPRunnerPro 9.7 and ASPRunner.NET 9.7 released!<\/p>\n<p><strong>New customer purchase links:<\/strong><br \/>\n<a href=\"http:\/\/xlinesoft.com\/phprunner\/register.htm\">PHPRunner<\/a><br \/>\n<a href=\"http:\/\/xlinesoft.com\/asprunnerpro\/register.htm\">ASPRunnerPro<\/a><br \/>\n<a href=\"http:\/\/xlinesoft.com\/asprunnernet\/register.htm\">ASPRunner.NET<\/a><\/p>\n<p><strong>Upgrade links:<\/strong><br \/>\n<a href=\"http:\/\/xlinesoft.com\/phprunner\/upgrade_guide.htm\">PHPRunner<\/a><br \/>\n<a href=\"http:\/\/xlinesoft.com\/asprunnerpro\/upgrade_guide.htm\">ASPRunnerPro<\/a><br \/>\n<a href=\"http:\/\/xlinesoft.com\/asprunnernet\/upgrade_guide.htm\">ASPRunner.NET<\/a><\/p>\n<p><strong>Trial version download links:<\/strong><br \/>\n<a href=\"http:\/\/xlinesoft.com\/download\">http:\/\/xlinesoft.com\/download<\/a><\/p>\n<p>Here is the list of new features in version 9.7.<\/p>\n<h2>1. Improved password hashing<\/h2>\n<p>Option to use industry standard bcrypt hashing algorithm. Send password reset link to user&#8217;s email, link expires in 24 hours.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/xlinesoft.com\/blog\/wp-content\/uploads\/2017\/02\/scr_password_encryption.png\" alt=\"\" title=\"scr_password_encryption\" width=\"540\" height=\"328\" class=\"alignnone size-full wp-image-1574\" srcset=\"https:\/\/xlinesoft.com\/blog\/wp-content\/uploads\/2017\/02\/scr_password_encryption.png 540w, https:\/\/xlinesoft.com\/blog\/wp-content\/uploads\/2017\/02\/scr_password_encryption-300x182.png 300w, https:\/\/xlinesoft.com\/blog\/wp-content\/uploads\/2017\/02\/scr_password_encryption-150x91.png 150w, https:\/\/xlinesoft.com\/blog\/wp-content\/uploads\/2017\/02\/scr_password_encryption-400x242.png 400w\" sizes=\"(max-width: 540px) 100vw, 540px\" \/><br \/>\n<!--more--><\/p>\n<h2>2. Code snippets in dashboards<\/h2>\n<p>You can insert any sort of code snippet as dashboard element. This can be some code that displays current weather, calculates order totals, displays number of active users or even displays a Youtube video. <\/p>\n<p>See this <a href=\"http:\/\/demo.asprunner.net\/volinrok_yahoo_com\/Version97Demo\/Orders_dashboard_dashboard.php\">live demo<\/a> for inspiration. <\/p>\n<h2>3. &#8216;Sort by&#8217; dropdown control<\/h2>\n<p>When this option is useful:<\/p>\n<ul>\n<li>Vertical or columns List page mode that previously didn&#8217;t have sorting options<\/li>\n<li>&#8216;Sort by&#8217; control in mobile mode<\/li>\n<li>Need to setup application specific sort modes<\/li>\n<\/ul>\n<p>You can also choose if users still can sort data by clicking on column headers.<\/p>\n<p><a href=\"https:\/\/xlinesoft.com\/blog\/wp-content\/uploads\/2017\/02\/scr_sort_dropdown.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/xlinesoft.com\/blog\/wp-content\/uploads\/2017\/02\/scr_sort_dropdown-300x186.png\" alt=\"\" title=\"scr_sort_dropdown\" width=\"300\" height=\"186\" class=\"alignnone size-medium wp-image-1577\" srcset=\"https:\/\/xlinesoft.com\/blog\/wp-content\/uploads\/2017\/02\/scr_sort_dropdown-300x186.png 300w, https:\/\/xlinesoft.com\/blog\/wp-content\/uploads\/2017\/02\/scr_sort_dropdown-150x93.png 150w, https:\/\/xlinesoft.com\/blog\/wp-content\/uploads\/2017\/02\/scr_sort_dropdown-400x248.png 400w, https:\/\/xlinesoft.com\/blog\/wp-content\/uploads\/2017\/02\/scr_sort_dropdown.png 870w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p>Here is how it looks in <a href=\"http:\/\/demo.asprunner.net\/volinrok_yahoo_com\/Version97Demo\/orders_list.php\">generated application<\/a>.<\/p>\n<h2>4. Grid row\/field click actions<\/h2>\n<p><a href=\"https:\/\/xlinesoft.com\/blog\/wp-content\/uploads\/2017\/02\/scr_click_actions.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/xlinesoft.com\/blog\/wp-content\/uploads\/2017\/02\/scr_click_actions-300x181.png\" alt=\"\" title=\"scr_click_actions\" width=\"300\" height=\"181\" class=\"alignnone size-medium wp-image-1590\" srcset=\"https:\/\/xlinesoft.com\/blog\/wp-content\/uploads\/2017\/02\/scr_click_actions-300x181.png 300w, https:\/\/xlinesoft.com\/blog\/wp-content\/uploads\/2017\/02\/scr_click_actions-150x90.png 150w, https:\/\/xlinesoft.com\/blog\/wp-content\/uploads\/2017\/02\/scr_click_actions-400x241.png 400w, https:\/\/xlinesoft.com\/blog\/wp-content\/uploads\/2017\/02\/scr_click_actions.png 870w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p>This one is pretty cool, you can assign actions like open a certain page, make record selected, expand\/collapse details or run a custom code to row\/cell click. <\/p>\n<p>Check this <a href=\"http:\/\/demo.asprunner.net\/volinrok_yahoo_com\/Version97Demo\/orders_list.php\">live demo<\/a>.<\/p>\n<p>Click CustomerID cell to open Orders view page in popup.<\/p>\n<p>Click OrderID field to retrieve current order total and display it in OrderID field.  <\/p>\n<p>Code for this example:<\/p>\n<h3>Client Before event<\/h3>\n<pre name=\"code\" class=\"javascript:nocontrols\">\r\n\/\/ pass OrderID to Server event\r\nparams[\"OrderID\"] = row.getFieldValue(\"OrderID\");\r\n<\/pre>\n<h3>Server event<\/h3>\n<pre name=\"code\" class=\"php:nocontrols\">\r\n\/\/ run SQL Query to retrieve order total\r\n$result[\"total\"] = DBLookup(\"select sum(Quantity*UnitPrice) from \r\n`Order Details` where OrderID=\".$params[\"OrderID\"]);\r\n<\/pre>\n<h3>Client After event<\/h3>\n<pre name=\"code\" class=\"javascript:nocontrols\">\r\n\/\/ change cell background\r\nrow.fieldCell(\"OrderID\").css('background', 'yellow' );\r\n\/\/ add order total to OrderID cell content\r\nrow.fieldCell(\"OrderID\").html(\r\n   row.fieldCell(\"OrderID\").html()+\"<br>Total: \"+result[\"total\"]);\r\n<\/pre>\n<h2>5. New APIs<\/h2>\n<p>If you enjoy pushing your web applications beyond built-in functionality you going to love this update. We have added five new APIs in this version that will help you build modern applications. Here are some highlights and use cases. See full list of functions each API provides in updated manual. <\/p>\n<h3>Security API<\/h3>\n<p>Get username or user group of current user. Get or set OwnerID or permissions for any specific table. Verify username and password. Log user in automatically from your code. Check if user is logged in, if user is an admin, if user is a guest. <\/p>\n<h3>Labels\/Titles API<\/h3>\n<p>Things like change project logo on the fly, modify table captions, modify breadcrumbs display format, modify field label or tooltip etc. <\/p>\n<h3>Tabs\/Sections API<\/h3>\n<p>Make a tab active, enable\/disable a tab, add a tab in runtime, change tab header or content, expand\/collapse a section etc.<\/p>\n<h3>Search API<\/h3>\n<p>Lets you run a totally custom searches. For instance you have Order and OrderDetails tables setup as Master-Details. With the help of Search API you can display all orders that include a specific product in OrderDetails. <\/p>\n<h3>Ajax row click API<\/h3>\n<p>You can see an example of this API usage in previous code sample where we dynamically display order totals in OrderID column. You can change any field visual appearance or content using this API. Besides using it in &#8216;Click action&#8217; event you can also access this API from any button added to the grid.<\/p>\n<h2>6. Improved appearance of cross-tab reports<\/h2>\n<p>Try scrolling down and right to see freezing columns and header.<\/p>\n<p><a href=\"https:\/\/xlinesoft.com\/blog\/wp-content\/uploads\/2017\/02\/scr_crosstab.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/xlinesoft.com\/blog\/wp-content\/uploads\/2017\/02\/scr_crosstab-300x168.png\" alt=\"\" title=\"scr_crosstab\" width=\"300\" height=\"168\" class=\"alignnone size-medium wp-image-1586\" srcset=\"https:\/\/xlinesoft.com\/blog\/wp-content\/uploads\/2017\/02\/scr_crosstab-300x168.png 300w, https:\/\/xlinesoft.com\/blog\/wp-content\/uploads\/2017\/02\/scr_crosstab-1024x576.png 1024w, https:\/\/xlinesoft.com\/blog\/wp-content\/uploads\/2017\/02\/scr_crosstab-150x84.png 150w, https:\/\/xlinesoft.com\/blog\/wp-content\/uploads\/2017\/02\/scr_crosstab-400x225.png 400w, https:\/\/xlinesoft.com\/blog\/wp-content\/uploads\/2017\/02\/scr_crosstab.png 1158w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p><a href=\"http:\/\/demo.asprunner.net\/volinrok_yahoo_com\/Version97Demo\/orders_Report_report.php?x=OrderDate&#038;y=CustomerID&#038;data=OrderTotal&#038;op=max\">Live demo<\/a><\/p>\n<h2>7. Form field placeholders<\/h2>\n<p>Placeholders are in-place tooltips that disappear as soon user starts typing something in that field. <\/p>\n<p><a href=\"https:\/\/xlinesoft.com\/blog\/wp-content\/uploads\/2017\/02\/scr_placeholders.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/xlinesoft.com\/blog\/wp-content\/uploads\/2017\/02\/scr_placeholders-300x143.png\" alt=\"\" title=\"scr_placeholders\" width=\"300\" height=\"143\" class=\"alignnone size-medium wp-image-1585\" srcset=\"https:\/\/xlinesoft.com\/blog\/wp-content\/uploads\/2017\/02\/scr_placeholders-300x143.png 300w, https:\/\/xlinesoft.com\/blog\/wp-content\/uploads\/2017\/02\/scr_placeholders-150x71.png 150w, https:\/\/xlinesoft.com\/blog\/wp-content\/uploads\/2017\/02\/scr_placeholders-400x190.png 400w, https:\/\/xlinesoft.com\/blog\/wp-content\/uploads\/2017\/02\/scr_placeholders.png 706w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p><a href=\"http:\/\/demo.asprunner.net\/volinrok_yahoo_com\/Version97Demo\/employees_add.php\">Live demo<\/a><\/p>\n<p>Enjoy!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>PHPRunner 9.7, ASPRunnerPro 9.7 and ASPRunner.NET 9.7 released! New customer purchase links: PHPRunner ASPRunnerPro ASPRunner.NET Upgrade links: PHPRunner ASPRunnerPro ASPRunner.NET Trial version download links: http:\/\/xlinesoft.com\/download Here is the list of new features in version 9.7. 1. Improved password hashing Option to use industry standard bcrypt hashing algorithm. Send password reset link to user&#8217;s email, link expires in 24 hours.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[16,10,1,4,3],"tags":[],"_links":{"self":[{"href":"https:\/\/xlinesoft.com\/blog\/wp-json\/wp\/v2\/posts\/1573"}],"collection":[{"href":"https:\/\/xlinesoft.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/xlinesoft.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/xlinesoft.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/xlinesoft.com\/blog\/wp-json\/wp\/v2\/comments?post=1573"}],"version-history":[{"count":36,"href":"https:\/\/xlinesoft.com\/blog\/wp-json\/wp\/v2\/posts\/1573\/revisions"}],"predecessor-version":[{"id":1623,"href":"https:\/\/xlinesoft.com\/blog\/wp-json\/wp\/v2\/posts\/1573\/revisions\/1623"}],"wp:attachment":[{"href":"https:\/\/xlinesoft.com\/blog\/wp-json\/wp\/v2\/media?parent=1573"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/xlinesoft.com\/blog\/wp-json\/wp\/v2\/categories?post=1573"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/xlinesoft.com\/blog\/wp-json\/wp\/v2\/tags?post=1573"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}