home *** CD-ROM | disk | FTP | other *** search
- on DBGetRecipe recipeID
- global gDBObject, gDBResult, gGRkeyID, gGRDBNum
- set gDBResult to gDBObject(mGetDBRecipe, recipeID, 1)
- return gDBResult
- end
-
- on getTitle
- global gCurrentRecipe, gDBTitle, gDBChapter, gRecipeIDDB
- DBGetRecord(gCurrentRecipe, "recipe")
- if (gCurrentRecipe > 1700) or (gCurrentRecipe < 2069) then
- put getOne(gRecipeIDDB, gCurrentRecipe) into field "title"
- else
- put DBGetField(gDBTitle) into field "title"
- end if
- put DBGetField(gDBChapter) into field "chapter"
- end
-
- on getNutrition
- global gDBCalories, gDBCholesterol, gDBCarbohydrates, gDBProtein, gDBSodium, gDBFat, gDBSaturated, gDBPotassium, gNutrition
- set gNutrition to EMPTY
- set gNutrition to integer(DBGetField(gDBCalories))
- put " calories, " after gNutrition
- put integer(DBGetField(gDBProtein)) after gNutrition
- put " g protein, " after gNutrition
- put integer(DBGetField(gDBCarbohydrates)) after gNutrition
- put " g carbohydrates, " after gNutrition
- put integer(DBGetField(gDBFat)) after gNutrition
- put " g fat (" after gNutrition
- put integer(DBGetField(gDBSaturated)) after gNutrition
- put " g saturated fat), " after gNutrition
- put integer(DBGetField(gDBCholesterol)) after gNutrition
- put " mg cholesterol, " after gNutrition
- put integer(DBGetField(gDBSodium)) after gNutrition
- put " mg sodium, " after gNutrition
- put integer(DBGetField(gDBPotassium)) after gNutrition
- put " mg potassium." after gNutrition
- end
-
- on getBlurb
- global gDBDescription, gCurrentRecipe
- put EMPTY into field "blurb"
- if gCurrentRecipe <> 1717 then
- put DBGetField(gDBDescription) into field "blurb"
- else
- put field "1717blurb" into field "blurb"
- end if
- end
-
- on getIngredients
- global gDBResult, gCurrentRecipe, gDBIngredient
- set ingredients to EMPTY
- set ingredientsPrint to EMPTY
- DBGetRecord(gCurrentRecipe, "ingredient")
- set ingredient to DBGetField(gDBIngredient)
- set ingredients to ingredient & RETURN & RETURN
- set ingredientsPrint to ingredient & RETURN
- repeat while 1
- DBNextRecord("ingredient")
- if gDBResult = 2 then
- exit repeat
- end if
- set ingredient to DBGetField(gDBIngredient)
- put ingredient & RETURN & RETURN after ingredients
- put ingredient & RETURN after ingredientsPrint
- end repeat
- put ingredients into field "ingredients"
- end
-
- on getPrepTime
- global gCurrentRecipe, gDBPrepTime
- DBGetRecord(gCurrentRecipe, "prep time")
- put integer(DBGetField(gDBPrepTime)) into field "prep time"
- end
-
- on DBRecipeTerms
- global gCurrentRecipe, gDBTermLinks, gTermIDDB
- cursor(4)
- DBBeginSearchSession()
- set termList to []
- set results to DBStartSearch(gCurrentRecipe, gDBTermLinks)
- repeat with i = 1 to results
- add(termList, getOne(gTermIDDB, DBGetResult(i)))
- end repeat
- DBEndSession()
- cursor(-1)
- return termList
- end
-
- on DBAboutRecipe
- global gCurrentRecipe, gDBRamble, gDBDescription, gDBSubTitle, gDBAuthorName, gDBOriginalBook, gDBOrganization, gDBCity, gDBState
- cursor(4)
- dbBeginSession()
- DBGetRecord(gCurrentRecipe, "recipe")
- put DBGetField(gDBRamble) into field "ramble"
- DBGetRecord(gCurrentRecipe, "recipe")
- put DBGetField(gDBDescription) into field "info"
- DBGetRecord(gCurrentRecipe, "recipe")
- put DBGetField(gDBSubTitle) into field "subtitle"
- put DBGetField(gDBAuthorName) into field "author name"
- put DBGetField(gDBOriginalBook) into field "original book"
- put DBGetField(gDBOrganization) into field "organization"
- put DBGetField(gDBCity) & ", " & DBGetField(gDBState) into field "location"
- DBEndSession()
- cursor(-1)
- end
-
- on DBrecipePage1
- global gCurrentBook, gCurrentRecipe, gDBBeauty
- cursor(4)
- dbBeginSession()
- getTitle()
- getBlurb()
- DBGetRecord(gCurrentRecipe, "beauty")
- set beauty to DBGetField(gDBBeauty)
- updateBeauty(beauty)
- DBEndSession()
- cursor(-1)
- end
-
- on DBRecipePage2
- global gDBResult, gCurrentRecipe, gDBCalories, gDBInstruction, gDBInstructionType, gDBServings, gMethodName1, gMethodName2, gNutrition
- cursor(4)
- dbBeginSession()
- put EMPTY into field "nutrition"
- getPrepTime()
- getTitle()
- put integer(DBGetField(gDBServings)) into field "servings"
- set recipeText to EMPTY
- getNutrition()
- DBGetRecord(gCurrentRecipe, "ingredient")
- set ingredient to DBGetField(gDBIngredient)
- set recipeText to ingredient & RETURN & RETURN
- repeat while 1
- DBNextRecord("ingredient")
- if gDBResult = 2 then
- put "^" after recipeText
- exit repeat
- end if
- set ingredient to DBGetField(gDBIngredient)
- put ingredient & RETURN & RETURN after recipeText
- end repeat
- DBGetRecord(gCurrentRecipe, "instruction")
- if DBGetField(gDBInstructionType) = 1.0 then
- set anInstruction to DBGetField(gDBInstruction)
- put anInstruction after recipeText
- end if
- repeat while 1
- DBNextRecord("instruction")
- if gDBResult = 2 then
- exit repeat
- end if
- if DBGetField(gDBInstructionType) = 1.0 then
- set num to num + 1
- set anInstruction to DBGetField(gDBInstruction)
- put RETURN & RETURN & anInstruction after recipeText
- next repeat
- end if
- exit repeat
- end repeat
- set mark to offset("^", recipeText)
- set ingredients to char 1 to mark - 1 of recipeText
- set instructions to char mark + 1 to length(recipeText) of recipeText
- put ingredients into field "ingredients"
- put instructions into field "instructions"
- put RETURN after field "instructions"
- put gNutrition into field "nutrition"
- DBEndSession()
- cursor(-1)
- end
-
- on DBRecipePage4
- global gDBResult, gCurrentPrepTime, gCurrentDishType, gCurrentRecipe, gPersonalBrowser, gPersonalIDDB
- cursor(4)
- if gCurrentRecipe > 6000 then
- set recipeName to getOne(gPersonalIDDB, gCurrentRecipe)
- else
- set recipeName to getOne(gRecipeIDDB, gCurrentRecipe)
- end if
- set tempRecipeID to getaProp(gRecipeIDDB, recipeName)
- if tempRecipeID then
- set gCurrentRecipe to tempRecipeID
- end if
- set recipeName to getOne(gRecipeIDDB, gCurrentRecipe)
- set gBrowserNum to getOne(gPersonalBrowser, recipeName)
- if gCurrentRecipe >= 6000 then
- DBBeginSaveSession()
- DBGetSetRecord(gCurrentRecipe, "personal recipe")
- put DBGetSetField(3001) into field "title"
- set categoryID to DBGetSetField(3004)
- put integer(DBGetSetField(3003)) into field "servings"
- set instructions to DBGetSetField(20001)
- put instructions into field "instructions"
- put RETURN after field "instructions"
- put instructions into field "instructions print"
- DBGetSetRecord(categoryID, "personal category")
- if gDBResult = 0 then
- put DBGetSetField(5001) into field "chapter"
- else
- put "Category 1" into field "chapter"
- end if
- set ingredients to EMPTY
- DBGetSetRecord(gCurrentRecipe, 4000)
- if gDBResult = 0 then
- set ingredient to DBGetSetField(4004)
- set ingredients to ingredient & RETURN & RETURN
- repeat while 1
- DBNextSetRecord(4000)
- if gDBResult <> 0 then
- exit repeat
- end if
- if integer(DBGetSetField(4000)) <> gCurrentRecipe then
- exit repeat
- end if
- set ingredient to DBGetSetField(4004)
- put ingredient & RETURN & RETURN after ingredients
- end repeat
- put ingredients into field "ingredients"
- end if
- else
- dbBeginSession()
- getTitle()
- put getOne(gRecipeIDDB, gCurrentRecipe) into field "title"
- put integer(DBGetField(gDBServings)) into field "servings"
- DBGetRecord(gCurrentRecipe, "ingredient")
- set ingredient to DBGetField(gDBIngredient)
- set recipeText to ingredient & RETURN & RETURN
- repeat while 1
- DBNextRecord("ingredient")
- if gDBResult = 2 then
- put "^" after recipeText
- exit repeat
- end if
- set ingredient to DBGetField(gDBIngredient)
- put ingredient & RETURN & RETURN after recipeText
- end repeat
- DBGetRecord(gCurrentRecipe, "instruction")
- if DBGetField(gDBInstructionType) = 1.0 then
- set anInstruction to DBGetField(gDBInstruction)
- put anInstruction after recipeText
- end if
- repeat while 1
- DBNextRecord("instruction")
- if gDBResult = 2 then
- exit repeat
- end if
- if DBGetField(gDBInstructionType) = 1.0 then
- set num to num + 1
- set anInstruction to DBGetField(gDBInstruction)
- put RETURN & RETURN & anInstruction after recipeText
- next repeat
- end if
- exit repeat
- end repeat
- set mark to offset("^", recipeText)
- set ingredients to char 1 to mark - 1 of recipeText
- set instructions to char mark + 1 to length(recipeText) of recipeText
- put ingredients into field "ingredients"
- put instructions into field "instructions"
- end if
- DBEndSession()
- cursor(-1)
- end
-
- on getMethodTag anInstruction
- end
-
- on getTipTag aTip
- end
-
- on placeMethods instructions
- end
-