Hide Card Image if Empty

Hi @Mark or whoever can assist—

The cards layout needs to have a way to hide the image container when there is no image to display. Otherwise, it’s just ugly:

Thoughts on how to address this in the meanwhile?
EDIT: used a generate image column to fill the gap for now, but it still sticks out like a sore thumb.

6 Likes

@Robert_Petitto maybe something like this in meantime - just a thought https://pravatar.cc/ with some kind of indication “awaiting image”

Yeah, but only if I was requiring an image to be there—some posts won’t have any images.

1 Like

Ahh I get you, fair point Sir…

Quick q - is it a bug though or a feature request? (just saying) Wink :wink:

Same is true for Tags. If a tag is empty, there is still an ugly placeholder for it that changes the size of the card.

1 Like

The good news is when the api column arrives you can use that image search to automatically fill in blank images with a if then column, if blank then api image otherwise use their image.

1 Like

Robert you could plug that API directly into scripts right now actually and do it that way in the meantime.

Ya…I’m just using the generate image column for now—client is okay with it.

Oh…well…here’s a quick API call…

functionGetAPI(){
var response = 
UrlFetchApp.fetch("https://www.thecocktaildb.com/api/json/v1/1/randomselection.php")
Logger.log(response.getContentText());
  var fact = response.getContentText();
  var spreadsheet = SpreadsheetApp.getActive();
  spreadsheet.getRange('A5').activate();
  spreadsheet.setActiveSheet(spreadsheet.getSheetByName('Sheet1'), true);
  spreadsheet.getRange(spreadsheet.getLastRow() + 1,1).setValue([fact]);
   }

Then you would just have to get the info from the call like this

function callDrink() {

 var response = UrlFetchApp.fetch("https://www.thecocktaildb.com/api/json/v1/1/filter.php? 
a=Alcoholic");

  // Parse the JSON reply
   var json = response.getContentText();
   var data = JSON.parse(json);

 Logger.log(data);
 Logger.log(data["results"]);
 Logger.log(data["results"][0]);
 Logger.log(data["results"][0]["artistName"]);
 Logger.log(data["results"][0]["collectionName"]);
 Logger.log(data["results"][0]["artworkUrl60"]);
 Logger.log(data["results"][0]["previewUrl"]);
}

This one listed doesn’t actually work with this url i was just copying and pasting from my scripts real quick.