Category Archives: Web Development

HTTPOXY vulnerability on IBM i

If you’re not up to date with security PTFs you will want to read the following security bulletin from IBM:

It relates to the HTTPOXY vulnerability in the HTTP server, and there are PTFS for Releases 6.1, 7.1, and 7.2.

BCD products that use the HTTP server include WebSmart, Clover, Presto, and Nexus.

As always, contact our support department if you have any questions or concerns,

Marc Hunter

On-Demand Webinar: How to Simplify RPG or PHP Mobile Development with jQuery Mobile

One of the challenges with mobile development is giving your applications a modern look and feel that meets users’ expectations. If you’re using WebSmart for mobile web development, you’re most likely already working with jQuery Mobile, which is used in the new mobile templates. It’s also possible to use jQuery Mobile with Presto to give your green screens an even more mobile-optimized UI.

Craig Pelkie and Marcel Sarrasin recently recorded an educational webinar on simplifying mobile web development with jQuery Mobile. jQuery Mobile is a free, touch-optimized web framework that makes it easy to create visually appealing mobile web applications.  This webinar is now available for on-demand viewing.

jQuery Mobile - touch-optimized web framework for tablets and smartphones

Continue reading

How to Use Chrome Developer Tools to Debug Ajax

Ajax is a popular technique that we’re seeing more of our clients use to create faster and more dynamic web applications. It’s also part of the new WebSmart templates and used in the underlying Presto code. It can, however, be difficult to know where to start when debugging Ajax. How do you tell which component (e.g. HTML, jQuery event, Ajax call, server-side script, Ajax response callback) isn’t working properly?

Continue reading

Dive into jQuery

If you’re like most programmers today, you’re expected to write modern looking, quick responding web apps with cross-browser (and cross-platform) capabilities. For this reason, client-side programming often accounts for a significant portion of coding time. Tools and technologies that help speed it up – while giving end users web apps that look and behave the way they expect – can be invaluable.

Continue reading

Webinar: Get More Out of BCD Products and Learn from Experts

This webinar is available for on-demand viewing. It was presented live on May 7, 2013. 

Do you ever wish you could clone yourself so you could develop more web apps with BCD products? Whether you’re struggling to find the time or want to develop more sophisticated web apps (e.g. mobile), one approach is to work with BCD Professional Services.

Attend our webinar on Tuesday, May 7 at 1PM EST to learn about the services we offer and the benefits of partnering with us, such as short-term commitments. We’ll also show you real-world examples so you can see the quality of our work or get ideas for your next WebSmart, Presto, Clover or Nexus project.

Our team of web development experts can create entire web apps for you, jumpstart your project or work with your IT staff on any size project. We use our own tools (which we know quite well!) to rapidly complete projects so you’ll see professional results faster. You’ll get a further advantage because you’ll be able to see our coding standards and optionally use our mentoring services to help you move forward.

Sign up here!

(Even if you can’t make the live event, sign up to receive a link to the recording).


How to Add Form Validation and Filters to the Grid

This is our third article in a series of blog posts about how to customize programs created with the WebSmart ILE Page At a Time(Grid) template. Previously, we showed you how to customize column sorting options and how to create color themes for the Grid and other jQuery widgets. The examples below explain how to add form validation and additional filters, both of which make it easier for users to work with grid-based programs.

How to validate data when adding or changing records (Example 264)
In this example, you’ll reduce data entry errors by introducing client-side validation to the Grid’s Add and Change Record forms. jQuery Validate is used to add dynamic, nicely-styled error messages to form inputs. View example »

Form validation on an Add Record form

How to add additional filters after completing the grid template wizard (Example 255)
Filters are added to the grid when you create the initial program definition but you can manually add additional filters at any time after completing the template wizard. This example will walk you through creating a filter in the PML source code then adding the HTML to the GridContainer segment. View example »

Please contact Technical Support if you have any questions.

How to Create Color Themes for jQuery UI Widgets with ThemeRoller

Styling multiple user interface (UI) widgets at once and picking pre-determined color combinations can save a significant amount of time and effort on a web development project. jQuery UI is a suite of user interface widgets (e.g. datepickers, tabs), effects and CSS color themes built on top of the jQuery Javascript library.

The grid that lists file records in WebSmart’s Page at a Time(Grid) template, which has been available since version 9.2, is a set of jQuery UI widgets called jqGrid. You can use ThemeRoller, a free and interactive jQuery widget CSS generator, to easily select pre-determined color themes or create your own without writing CSS.

Default Idaho theme Idaho customized with Sunny theme

Continue reading

How to write Internet Explorer specific CSS

If you work with CSS, you know that at times you will need to write IE-specific styles… or worse, IE-version specific styles. Some particularly common examples would be when you’re working with the position property, or padding/margins, where it’s quite common for the placement to vary between IE and other browsers. There are a number of different approaches that have been tried, including JavaScript plugins that (only somewhat reliably) detect the browser type and version, CSS hacks that for reasons that don’t need to be stated, should probably be avoided (they’re hacks), conditional comments, and probably more.

Continue reading

Locking Users Out of a Web Process

I had a client that wanted to only allow one user to maintain an order record at any given time. When a user is in an order we will set a field to the user that is using the order so we can tell anybody being locked out who currently has the lock. For some applications it is fine to simply set this lock in one location where the user enters the order and unset the lock in another location when finishing the order. Similarly to WebSmart’s Change Management, we know this can often result in orphaned locks over time if the browser is ended abnormally. In this case even the simple act of the user closing the browser will not trigger the unlock.

Continue reading