Enabling Email and Password Reset in Sitefinity

By | Sitefinity | No Comments

One of the common requests I get when working on various Sitefinity projects is to enable a feature in the Sitefinity backend that, by all appearances, is already on by default. I am talking, of course, about the ability for a site administrator to reset a Sitefinity user’s password from the backend, which reveals the password to the administrator (should they wish to notify the user personally) and also send an email to the user whose password was changed. While the UI is there out of the box and Sitefinity lets you attempt a password reset, in actuality nothing will…

Read More
UISegmentedControl Text Color Change

Xamarin Quick Tip – Changing the UISegmentedControl Text Color

By | C#, iOS, Xamarin | No Comments

In iOS, the UISegmentedControl is a popular control. It allows you to present your data in an organized, tabbed fashion. When a segment is selected, the text on the segment is changed to the Background Color of the control, this text can sometimes become lost and difficult to read. To get around this problem, this post will show you how to change the UISegmentedControl Text Color when a segment is selected. UISegmentedControl Color Properties The UISegmentedControl has some direct color properties, I will outline the most important ones here. First we have the Tint Color, which is used as the…

Read More
Ghost

Ghost Inspector

By | Ghost Inspector, Testing, Web | No Comments

Ghost Inspector for Web UI Testing Sometimes you need a knife, not a Swiss-army knife. Too many bells and whistles can actually get in the way. For example, our web portal testing requires a recorder to handle straight-forward scenarios: clicking, entering text, and checking state. We also need a way to augment recordings for more complex scenarios. Most web testing tools can get you this far. But we also need tests to run in the cloud, right out of the box. We want test results sent via email or Slack without jumping through hoops (and certainly without writing custom interfaces). And finally, we want test…

Read More
iPad and iPhone

Xamarin Quick Tip : Identifying if a device is an iPad or an iPhone using UserInterfaceIdiom

By | C#, iOS, Xamarin | No Comments

If you simply need to determine whether the device using your application is an iPad or iPhone in Xamarin.iOS without additional ceremony, look no further. The UserInterfaceIdiom can be used to solve this problem. Identification of the Device Type using UserInterfaceIdiom In order to identify the device type using the application. The following code can be used:

The UserInterfaceIdiom property will return any of the following enum values: CarPlay Pad (iPad) Phone (iPhone) TV Unspecified Alternatives for a more granular Device Identification If you require a more granular approach to device identification, such as distinguishing between the specific models of each…

Read More

Access IIS Express from a Remote Device

By | IIS Express, Mobile | 2 Comments

I recently came across a situation where I needed to access IIS Express from a remote device.  There a lot of blogs and Stack Overflow posts relating to this that involve updating binding elements in the IIS Express config and I tried a dozen or more of them with no luck.  I finally came across iisexpress-proxy and worked great!  You can check out the repo on Github for full details, but it in short it is an npm package that allows you to simply enable remote access to IIS Express via the command line with no dependencies othar than Node.js….

Read More
ns_partner_horizontal

Falafel Software Awarded Progress NativeScript Preferred Partner

By | News | No Comments

Falafel Software is proud to be awarded NativeScript Preferred Partner by Progress. Our preferred partner status is related to our work building mobile applications with NativeScript and our service to the NativeScript community. NativeScript Preferred Partners are trusted and reliable companies from around the world with proven track records of delivering result driven projects and services. NativeScript Preferred Partners contribute to the NativeScript developer community and showcase innovative projects. With Falafel Software as a NativeScript Preferred Partner, you can rest assured that we are the right partner for your mobile project.  

Read More

Trip Report: Intro to Google Cloud Platform

By | Cloud Platform, Google | One Comment

Intro I recently had the opportunity to attend a day of training on the Google Cloud Platform (GCP) at the Google offices in Chicago. Being an overview, the content didn’t dip too deeply into any one topic, but gave a decent survey of the available services. Here’s a condensed summary of what we learned. Infrastructure and Application Services There are three main offerings in this category of services. First of all, there is the straight-up infrastructure of Google Compute Engine, which is simply a virtual machine in the cloud. You can choose from a variety of Linux and Windows operating…

Read More

How to Build the NodeMCU Firmware using BoUoW

By | ESP8266, IoT, Linux, Windows | No Comments

This is post 13 of 13 in the series “IoT with the ESP8266” The Windows 10 Anniversary Update includes the Windows Subsystem for Linux, as I had mentioned in a previous post. The Bash shell (succinctly named “Bash on Ubuntu on Windows”, or BoUoW if you’re actually trying to search for information) permits native Linux ELF64 binaries to run on Windows. It’s pretty clever, but a little limited in areas. So, I wondered: since Linux is the preferred first-class build environment for ESP8266 firmware, can I build the NodeMCU firmware using BoUoW? Let’s find out! First, you will need to activate the feature and install BoUoW….

Read More

QuerySelectorAll Error on BeginFormSitefinity

By | ASP.NET, MVC, Sitefinity | No Comments

When developing a custom form on Sitefinity MVC widgets, the HTML helper method Sitefinity provides, Html.BeginFormSitefinity(), is a very handy resource. You wrap your form elements up inside the whole thing, along with a submit button, and you can point it at an HttpPost Action on your custom MVC widget controller with ease. When you’re putting your form widget on a master page, however, you can run into a rather vague JavaScript error that prevents your form from submitting correctly. The error in JavaScript brings up something about querySelectorAll and you’re left scratching your head as to what you did…

Read More

Add A Small LCD Display To Your Raspberry Pi

By | IoT | No Comments

Recently, I needed to put together a Raspberry Pi-based solution to run a Node.js app. I didn’t need Windows IoT Core or X-Windows – just a Linux TTY would do. But, I also wanted to include a LCD display to eliminate the need for a HDMI monitor.  Was it possible? Selecting and Configuring Display Hardware A quick search of the internet reveals many 3.5 inch screens for the Raspberry Pi. In fact, there are many different screen sizes available, but the 3.5 inch matches the footprint of the Pi itself. These are typically TFT displays with an SPI interface that plug into the Pi’s…

Read More
Software PWM at 0.35 Duty Cycle

Windows IoT Core: Software PWM

By | C#, Hardware, IoT, Microsoft, Raspberry Pi, Visual Studio, Windows, Windows Universal Apps | No Comments

One of the gaping holes in my opinion is the availability of PWM when working with Windows IoT Core on the Raspberry Pi. There are two approaches to solving this problem, one is with additional hardware to provide PWM functionality, the other is to achieve PWM with software. This article will focus on Software PWM. A Convenient Software PWM Library In poking around the web, I stumbled across this convenient library for Windows IoT Core. One of the implemented functions in this library is support for Software PWM. This library is also available as a package through NuGet. To demonstrate…

Read More
HoloLens image

Using HoloLens Toolkit to Deploy Your App

By | HoloLens, Unity | No Comments

This is post 3 of 3 in the series “Rummaging Through the HoloLens Toolkit” Using HoloLens Toolkit to Deploy Your App The Build Window for HoloLens Toolkit brings together scattered tools and processes. Now you can build, create an “APPX” package and deploy directly to a HoloLens device. This approach makes it easier to see all the steps in the process, all in one place. The SLN builds a new Visual Studio solution. The APPX group creates a package with the *.appx file, dependencies and manifest. The Deploy options let you target a device and install the package. The install through USB cable…

Read More

Enable Sitefinity Page Editing for Custom Roles

By | Sitefinity | No Comments

Page Editing: Just Assign the Right Roles. Right? I recently worked with a client that was setting up users in the Sitefinity backend under custom roles. Some users can edit one group of pages, while other users can edit other groups of pages. Setting up these groups of pages with the permissions so that group A can edit while B cannot, and vice-versa, is trivial. …But is that all we do in order to give users the page editing powers we wish to grant them? Nope! In attempting to complete this setup, the client was running into an issue: Despite…

Read More

Best Windows Git Client Redux

By | git | 7 Comments

It’s been over a year since I last wrote about Git tooling in the Windows ecosystem including my opinion on the best Git client for Windows. Here are some new clients I’ve tried since the last post and what I think of them. GitHub Last time I wrote about the GitHub client for Windows, I said I didn’t like it and that I found it bare of virtually any functionality at all. Since then, I read a post claiming that they (the creators of the program) wanted to make it the greatest client for Windows, so I thought I’d give…

Read More
sitefinity-config-key-value-pair

Simple Key-Value Sitefinity Configuration with NameValueCollection Property

By | News, Sitefinity | One Comment

Sitefinity allows you to easily create a custom configuration setting for storing and managing properties for your site. For the most part, you simply need to inherit from ConfigSection and add your properties. Once registered your settings will be automatically added to the backend Sitefinity Configuration page (Administration > Settings > Advanced). The documentation for this feature explains that there are several different types of properties supported, including simple types (like bool, string, etc.), as well as custom types that you can create by inheriting from ConfigElement and even collections for managing those custom types. However, one additional property type…

Read More

Kendo UI Combobox Customized: Previous Value Restore

By | JavaScript, Kendo UI | No Comments

Today I want to share a little Kendo UI Combobox customization, one that I hope you’ll find useful: restoring the previous value on an invalid entry. Often we see validation, especially numeric validation on a range for example, use coercion to simply force the value to either the highest or lowest number. This certainly prevents invalid entry, but the user experience isn’t all that great in every scenario. What may be preferred, for an allowed range of 0-10, and if the user intends to change a 3 to a 4 and instead accidentally enters 44, would be to just restore the value of 3 (not coerce to 10).

Read More
HoloLens image

Using HoloLens Toolkit to Configure Your App

By | HoloLens, Unity, Visual Studio | No Comments

This is post 2 of 3 in the series “Rummaging Through the HoloLens Toolkit” Using HoloLens Toolkit to Configure Your App HoloLens Toolkit makes short work of configuring a Unity application for deployment. No need to pick your way down the checklist. This video walks you through the toolkit menu options. To make your project HoloLens-ready, run the Apply HoloLens… Scene Settings positions the camera, makes the background transparent, and sets field-of-view properties to match the HoloLens environment. Project Settings creates a Visual Studio solution and changes the project build options to target a Universal Windows app that HoloLens can run….

Read More
HoloLens image

Get Started with HoloLens Toolkit in Unity

By | HoloLens, Unity | No Comments

This is post 1 of 3 in the series “Rummaging Through the HoloLens Toolkit” Get Started with HoLolens Toolkit in Unity There’s a lot to explore in the HoloLens Toolkit for Unity. In this video, we first download the toolkit and load it into Unity. Then we export the toolkit as a package, and finally, import the toolkit package to another project. Along the way, the video demonstrates how to resolve this error: “unsafe code requires the ‘unsafe’ command line option” If you don’t have Unity, download it here. The Unity download is a custom build that targets HoloLens. Get the latest HoloLens toolkit…

Read More
ZombieSmack-by-falafel

Falafel Releases ZombieSmack, a Free Game for Microsoft Hololens

By | HoloLens, Microsoft, News, Windows | 3 Comments

At Falafel, we’re always in the mindset that we need to innovate and test the boundaries and possibilities of new technology. So, when Microsoft announced the release of the HoloLens, we  just had to get our hands on it and start developing for it. And so we did… Announcing the release of ZombieSmack, the first HoloLens game from Falafel with many more to come. If you own a HoloLens, you can download and play ZombieSmack for FREE. For those of you who do not have a HoloLens, ZombieSmack is our take on the old school arcade game whack-a-mole game and since Halloween…

Read More
Experimental Decorator Warning

Suppressing Experimental Support for Decorators warning in VS Code

By | Angular 2, JavaScript, Mobile, NativeScript, TypeScript | No Comments

When working with TypeScript and Angular 2 in VS Code, you may encounter an Experimental Support for Decorators warning on some of the decorators you wish to use in your code. While it doesn’t affect the compilation or functionality of the application, it is a tad annoying to look at. In this example, I’m working with a NativeScript application.  Here are a couple steps to take in order to suppress this warning. Set the Experimental Decorators Property The first step in suppressing this warning, is to set the “experimentalDecorators” property to “true” in the TypeScript configuration file in the root of the project…

Read More
What Branch Am I On?

What Branch Am I On?

By | .NET, git | No Comments

When working on a project that is leveraging source/version control with branching it is always a good practice to know which branch you are currently on.  There is nothing worse than getting in the coding groove and an hour in thinking “What branch am I on?”, only to find out you are coding directly against master/release.  Of course your version control system of choice has a mechanism for letting you know what branch is active.  How this is accomplished will vary by system and, more likely than not, will require you to leave your beloved IDE.  There must be a…

Read More

Solved: Adding an Office 365 Email Account to Outlook 2016

By | Office365 | No Comments

Today, as part of repaving my laptop, I decided to install Office 2016. Everything was going fine until I tried to add my Office 365 email account to Outlook 2016. It seems that Auto Discover is now a requirement for Exchange email accounts – there is no longer a way to manually configure servers. And, for some reason, the Auto Discover process hung while trying to discover the server settings for my email (eventually erroring out) After a frustrating two hours of troubleshooting, I came across this blog post with a solution that worked for me: https://blog.jamesbayley.com/2015/12/01/registry-hack-to-enable-outlook-2016-to-connect-to-office-365/ In my case, I added three DWORD registry…

Read More

Angular.js: Configuration for Two Environments within one Project

By | AngularJS, node.js | No Comments

One of our recent projects is an Angular.js app that uses Node.js/Express as the application server. During development, we create feature branches that are merged into a “develop” branch for integration testing. Then, the we merge the “develop” branch into the “master” branch for production deployment. One issue that we had to solve was how to keep environment-specific config in source control. That is, our Angular app needed to know the URL for its API server, and the API server for development was different than production. The first attempt was to maintain one version of a config file in the “develop” branch, and a different version of that…

Read More