Taking ienissei's hint I tried to do this with komascripts \ifthispageodd command and encountered something interesting: As my MWE shows this doesn't produce stable results – each time I typeset the MWE the footnotes are broken differently:
\documentclass[twoside]{scrartcl}
\usepackage{bigfoot}
\interfootnotelinepenalty=8000
\newcommand*{\smartfootnote}[1]{\ifthispageodd{\interfootnotelinepenalty=10000}{\interfootnotelinepenalty=8000}\footnote{#1}\interfootnotelinepenalty=9000}
\usepackage{blindtext}
\begin{document}
\blindtext
\blindtext
\blindtext
\blindtext\smartfootnote{\blindtext}
\blindtext\smartfootnote{\blindtext}
\blindtext
\blindtext\smartfootnote{\blindtext\blindtext} \blindtext
\blindtext\blindtext\blindtext\smartfootnote{\blindtext} \blindtext
\end{document}
After the first run footnote 3 is broken across pages 2 and 3 as it should be, while footnote 4 is unbroken on page 4. After the second run, footnote 4 is broken across pages 3 and 4 which is wrong, after the third run, we're again correct. And so on and so on …
While I understand why this is happening, this is definitely not the last word on this.
chngpagepackage (unless you are usingmemoir, which implements it) to test whether the page is odd or even, and then something like\interfootnotelinepenalty=10000(not sure how it interacts withbigfoot). – ienissei Jan 5 '12 at 22:16