ContributionsMost RecentMost LikesSolutionsRe: Total Revenue FormulaHi Dirk, In all of those fields' settings, do you have the box checked that says "Treat blank values as 0 in calculations?" ------------------------------ Steve ------------------------------ Re: Inline CSS Styling of Images in Notification EmailsAs an update to this, removing the 'px' from the width specification seemed to work, and the images are properly re-sized in HTML email notifications now in Outlook and Gmail. Here's the working code in case anyone stumbles upon this post in the future: var text backupimage = [backupimage]; var text storyimage ="<center><a href='"&[originalLink]&"' target='_blank'><img width='150' src='"&[imageURL]&"'></a></center>"; If([imageURL]="",$backupimage,$storyimage) The [backupimage] field is also a formula rich-text field with a similar <img> tag, but with a hard-coded image URL. Thanks again Sam! ------------------------------ Steve Steve ------------------------------ Re: Inline CSS Styling of Images in Notification EmailsThanks for the help, Sam, I'll do some googling and asking some people around the office, but I appreciate the offer! I'll likely just end up deciding to host the images on our server or in a QB uploads table to avoid any potential hotlinking issues so will just resize the images manually for now. Thanks again! ------------------------------ Steve Steve ------------------------------ Re: Inline CSS Styling of Images in Notification EmailsHi Sam, I primarily use outlook, which is where I first noticed the issue. I forwarded the notification email to my gmail, and the images still seemed to be ignoring the width styling, even though the center and link tags still worked. You raise a good point about different email clients. This app is for generating newsletters by just copy/pasting links to the article and image, and since it will be sent to people likely using all sorts of different email clients (and also the issue of hotlinking images, which probably isn't the best way to go about it), perhaps the best solution after all will in fact be to download and re-upload the image (and resize it at the same time) so it is hosted in a place we control. It would still be nice to get to the bottom of this though if possible, for future reference when including images in email notifications in other apps. ------------------------------ Steve Steve ------------------------------ Inline CSS Styling of Images in Notification EmailsI have a rich text field that uses the below code to display an image from the web if a url is entered in the imageURL field, otherwise it will display the image using the url in the backupimage field. The code uses inline CSS to re-size the image, and works well within Quick Base. If I click to email the record, the preview it displays looks correct (centered and resized), but when the record is emailed or the record is emailed via notification, the images are centered as expected, but not resized, and show up full-size in the email. It seems to ignore the width style in both the default and custom email notification types, but interprets the rest of the HTML correctly. Is there something wrong with my code here that affects only emails, or is there a better way to accomplish this? (I'd like to avoid downloading the image, resizing it, and re-uploading it). Thanks for any ideas! var text backupimage = "<center><a href='"&[originalLink]&"' target='_blank'><img src='"&[backupimage]&"' width='150px'></a></center>"; var text storyimage ="<center><a href='"&[originalLink]&"' target='_blank'><img src='"&[imageURL]&"' width='150px'></a></center>"; If([imageURL]="",$backupimage,$storyimage) ------------------------------ Steve ------------------------------ SolvedRe: Role permissions for pagesFor posterity's sake, or for anyone with the same problem, or future me when I have the same problem and come to search here for the solution, here's what worked: Deny access to the registrants table for EOTI, except the ability to Add a record. Create a plain numeric field on the events table that gets updated via automation when a new registrant is added. What was happening was the formula field used to calculate remaining open slots for the event used the summary field number based off counting the registrants, then that remaining open slots number was passed back down to the registrant table to display on the form as they filled it out. Having a plain numeric field on the event table update via automation when a new registrant is added to the related event, then passing that plain number back down to the registrant table worked, and I was able to completely block off access to the registrant table for EOTI, since a summary field no longer needed to "see" how many others had registered for that event, and thus no longer required the registrant role to have access to the table. Also, an EOTI manually editing the url bar to show specific reports no longer works because table access was able to be denied for EOTI, and the List All of registrants report was placed back on the admin page. An EOTI can still get to the admin dashboard page by manually typing in the URL, but can see no report links or embedded reports they shouldn't.Re: Role permissions for pagesHow you described it above is how it works, but in the table listing the events I have a summary field of how many people have registered for the event. That summary count gets passed back to the registrant table to display on the form when someone registers, in order to calculate how many open slots for the event are available. When the app was first set up, I had to allow view of All Records on the Roles>Permissions tab for the table in order to get that feedback of how many slots are left to work. I figured since there was no way that I knew of at the time for the users to access that table (hiding table buttons, links, etc), it would be okay, until I found the url editing trick. All the reports for the registrant table have been restricted, but table access granted so the summary field on the events table can work right for the EOTI role. Since access to the report displaying on the admin page doesn't show up in the table reports widget, for now I've replaced the report showing all registrants with a different report that doesn't show everybody's information. This works, but makes the admin have to do a couple more clicks to get to that report that originally was on the main dashboard page. Good enough for now, but Austin if you or anyone has any additional suggestions I'd love to hear them! Thanks for the help! [edit] I also discovered now that if EOTI has table access the url address bar can be edited to access any of the reports for the table.Role permissions for pagesI've set up an app with a dashboard page that is open to EOTI. The purpose is for the public to see upcoming events, and register for them. It was all working great, until I realized that typing in ?a=showpage&pageid=X (where X= the page ID of the admin page) to the end of the URL allows them to access the dashboard page that was created for app administrators. Since a hover on other parts of the app will show the basic schema of how to access the page, all it would take is replacing the pageID with the ID of the admin page for them to see the admin page. Is there a way to restrict access to pages in the app for EOTI based on role or user settings? I'm worried that somebody could potentially view reports or records they shouldn't by modifying the URL in the address bar.Re: Have 2 API Formulas in one URL ButtonI'm no pro with APIs either, but since you need to add info to the record that is generated, you could try to do the checkbox part first, followed by the GenAddRecord part, something like this: URLRoot() & "db/" & Dbid() & "?act=API_EditRecord&rid=" & [Record ID#] & If([Sent To Purchasing]=true, "&_fid_14=0", "&_fid_14=1") & "&rdr=" &URLEncode(URLRoot() & "db/" & [_DBID_PARTS] & "?act=API_GenAddRecordForm"& "&_fid_19=" & URLEncode([CSE - Full Name]) & "&_fid_20=" & URLEncode([Part Name/Desc. (s)]& "\n\n" &[Tool Name/Desc.]) & "&_fid_6=" & URLEncode([Part Number(s)]& "\n\n" &[Tool Number] ) & "&_fid_32=" & URLEncode([Equipment Name / Desc.]) & "&_fid_21=" & URLEncode([FL Number / Equipment Number]) &"&z=" & Rurl()) The last line I *think* should return you to the page you started on. Again, I'm no expert, and with APIs I typically have to play around a bit with them, but that could be the general idea. Alternatively, could an automation fired off of the creation of a record on your Parts table that would go and then check the box be an option if the double-API call in a URL doesn't work? Hopefully that's helpful!Re: Have 2 API Formulas in one URL ButtonIf the dispatcher doesn't need to add any other information to the form in the process of creating the record, you may have better luck with API_AddRecord instead of GenAddRecordForm. They work similarly, but AddRecord will just add a record to the table without going through the process of using the form. Additionally, I don't believe that GenAddRecordForm can use "rdr" to do a subsequent API call, but AddRecord can. Here's a little more info about that: https://community.quickbase.com/quickbase/topics/using-z-rurl-and-rdr-in-formula-url-fields If you do need to add more information to the form while it's being created, you could try to put the checkbox API call first, and have it rdr to the GenAddRecordForm call. Not 100% sure if that would work, but may be something to try.